问题标签 [dependencies]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
2848 浏览

mixed-mode - 混合模式库和 CRT 依赖项 - 帮助

好吧,在进行了大量研究并尝试了几乎所有我能找到的托管 CPP Redist 以及尝试将我的 DLL 本地复制到应用程序的执行目录之后,我无法弄清楚这个混合模式库缺少哪些依赖项。

基本上我有一个大型 C# 应用程序,我正在尝试使用我制作的混合模式库。在开发机器上它可以完美运行(当然),但是在需要加载库以使用它时部署它,因为缺少 CRT 依赖项(我假设)。

我已经使用依赖遍历器检查所有引用的 DLL,并确保它们存在于部署机器上,但没有运气,我想知道是否可能缺少一些需要注册的依赖项,但我不知道是什么.

当代码尝试从混合模式库中实例化一个类时,出现以下异常。

异常详细信息:System.IO.FileLoadException:无法加载文件或程序集“USADSI.MAPI,版本=1.0.3174.25238,文化=中性,PublicKeyToken=null”或其依赖项之一。此应用程序无法启动,因为应用程序配置不正确。重新安装应用程序可能会解决此问题。(来自 HRESULT 的异常:0x800736B1)

我正在使用指定了 /clr:oldSyntax 的 VS2008 SP1 编译库。

中间清单如下所示:

我可以根据需要提供更多信息,不幸的是我并不精通制作混合模式库,所以这让我很失望。

如果有人可以提供任何建议,我将不胜感激!

0 投票
2 回答
2670 浏览

python - 如何为python代码做Makefile依赖

我有一堆 C 文件,它们是由一组具有许多共享 python 模块的 python 程序生成的,我需要在我的 make 系统中考虑到这一点。

枚举需要运行哪个 python 程序来生成每个 C 文件很容易。我找不到一个好的解决方案是确定这些程序依赖于哪些其他 python 文件。我需要这个,所以如果共享的 python 文件之一发生更改,make 将知道需要重新生成什么。

是否有一个很好的系统可以从 python 源的集合中生成样式依赖规则?

0 投票
5 回答
2456 浏览

.net - 检测 .NET Framework 3.5 SP1 依赖项(cmp. 3.5 w/o SP1)

我在我的机器上使用 3.5 SP1,而我们的客户目前使用没有 SP1 的 3.5。我不知道在 VS2008 中如何将解决方案或项目定位到不带 SP1 的 3.5,只有我安装的带 SP1 的 3.5。

如果我们使用 3.5 w/o SP1 中不可用的函数或构造函数,代码将无法正常工作。

也就是说,我想在编译时检测没有 SP1 的情况。

到目前为止,我们已经完成了测试(在 VM 或单独的机器中)以查看应用程序是否中断,并且有时当我们使用在 SP1 之前不可用的 API 部分时它确实会中断。问题是它仅在代码实际运行时(在运行时)而不是在加载程序集时中断。

一种解决方案是拥有一台带有 VS2008 w/o SP1 的机器并尝试编译该项目。但是,我更喜欢通过分析源代码或我们生成的程序集来帮助我检测对 3.5 SP1 的依赖项(由于使用新的 API 或其他原因)的工具。

我的谷歌能力对这个问题还不够强大,有什么提示吗?

0 投票
5 回答
2310 浏览

visual-studio - Visual Studio (2008) 混合模式项目依赖项。C-sharp 项目依赖于 C++ dll,但没有重新构建 C++ dll

我有一个包含两个项目的 Visual Studio 2008 解决方案。一个 C++ DLL 和一个 Csharp 应用程序。

Csharp 应用程序使用 [DllImport] 访问 DLL 中的函数,并在 DLL 上设置了依赖项。

出于某种原因,设置依赖项不足以导致 VS 将 DLL 复制到应用程序的构建路径。因此,应用程序项目有一个构建后事件,该事件会导致 DLL 被复制。(如果有人知道更清洁的方法,请告诉我!)

我遇到的问题是,当我对 DLL 代码进行更改,然后尝试在调试器中运行 Csharp 应用程序时,VS2008 无法意识到必须重新构建(并重新复制)DLL。

我必须强制重新构建 Csharp 应用程序(即通过明确选择构建,或通过“触摸”.CS 文件)。

有谁知道如何告诉 Visual Studio 做正确的事?

编辑:我正在使用项目依赖项。他们工作不正常。

正在使用构建后事件来复制 DLL。

问题在于,如果您只是选择调试应用程序,Visual Studio将无法重新编译更改后的 C++ 项目,尽管事实上存在依赖项

我知道依赖项正在工作,因为如果我选择“构建”(而不是“调试”),就会构建 C++ DLL。

0 投票
3 回答
7002 浏览

dependencies - 需要一个可以处理丢失文件的makefile依赖规则

我们为我们的系统使用 GNU Make。在我们的 makefile 的末尾,我们有一个名为 Makedepends 的包含,它使用 gcc 上的 -MM 开关生成一堆 .d 文件。然后,我们使用 include $(CXXFILES:.cc=.d) 行为每个 .cc 文件包含 .d 文件。但是当我们删除文件或移动文件时,依赖步骤会中断,我们必须手动删除 .d 文件(即使 make clean 也不起作用,因为依赖项失败)

有没有办法生成这些依赖 .d 文件或包含这些依赖 .d 文件,从而优雅地处理文件删除或重定位?

编辑:例如:我有serial.cc,makefiles生成一个serial.d文件,它依赖于buffer.h,但后来我改变了它,所以我不再需要buffer.h,我删除了buffer.h。下次我运行 make 时,它​​会阻塞,因为它包含仍然使 serial.o 依赖于 buffer.h 的 .d 文件。

0 投票
4 回答
3386 浏览

c - 依赖性检查 - 如何清理带有错误 makefile 的项目

我有一个非常大的 C 项目,其中包含许多单独的 C 文件和头文件以及许多贡献者。许多贡献者对 makefile 和依赖项没有深入的了解,这导致了一个常见的问题,即您几乎总是必须“make clean”才能相信“make”产生正确的输出。

如果 make 需要几分钟,这不会是一个问题,但现在在一台快速的机器上将近 2 个小时,人们开始检查他们制作时可以工作的代码,但他们没有先清理,他们的代码最终会中断构建。不要问为什么在新基线被削减之前构建经理没有捕捉到这些......

是的,我们不应该让它走这么远。

是的,我们正在教育我们的开发人员。

像往常一样,我们没有时间停止一切并手动修复它。

我认为有这些方面的工具:

  • 是否有自动化工具可以帮助从 C 和 H 文件为现有项目构建正确的依赖关系信息?
  • 是否有根据 makefile 描述依赖信息的自动化工具?
  • 是否有一个工具可以描述上述两个依赖树之间的差异?

但是还可以/应该做些什么来解决这个问题?

提前致谢...

-亚当

0 投票
8 回答
6761 浏览

perl - 在部署 Perl 项目之前如何确定 CPAN 依赖项?

有没有人对找到定制开发项目中可能出现的所有 CPAN 依赖项的好方法有任何建议。通常情况下,您的本地开发环境很少与您的实际环境相匹配,并且随着您构建越来越多的项目,您倾向于构建本地已安装模块的库。然后,这些会导致您不一定注意到您的最新项目对非核心模块有要求。由于通常需要将整个项目打包以部署到另一个组(在我们的例子中是我们的运营团队),因此了解包中应包含哪些模块非常重要。

有没有人对这个问题有任何见解。

谢谢

彼得

0 投票
5 回答
33836 浏览

visual-c++ - 错误:“BLAH.EXE”中的并排配置信息包含错误

这是 Dependency Walker 在我使用 VC++ 2005 Express Edition 构建的可执行文件上给我的错误。尝试运行 .exe 时,我得到:

(我是清单/SxS/等的新手。VC++ 2003 之后的处理方式。)

编辑:我在构建 .exe 的同一台机器上运行。在事件查看器中,我没有帮助:

0 投票
4 回答
1943 浏览

.net - 与 Mono 和具有依赖关系的多个项目(不包括 MonoDevelop)一起使用的正确构建系统是什么?

在之前的问题中,我询问了有关使用 xbuild 编译解决方案文件的问题,但被告知它对此不起作用。NAnt 似乎有点过时了。还有哪些其他选择?我需要一些支持跨多个项目的依赖关系的东西。

0 投票
5 回答
1826 浏览

c# - 消除依赖的技术?

设想:

在 A 类中引发了一个事件,需要由 B 类中的方法处理。(当前通过委托)

事件传递到方法的数据当前包装在 C 类中。
这显然需要 B 类依赖于 C 类。

我可以执行任何技术/重构来消除这种依赖关系吗?
例如,将数据展开回简单的原始数据类型并直接传递它们。