Mono:如何在 Makefile.am 中添加 DLL 引用?

Posted

技术标签:

【中文标题】Mono:如何在 Makefile.am 中添加 DLL 引用?【英文标题】:Mono: How to add a DLL reference in Makefile.am? 【发布时间】:2012-08-13 04:58:48 【问题描述】:

我正在尝试将 DLL 添加到 CmisSync,这是一个使用 Mono 和 autogen/configure/Makefiles 的 open source 项目。这是我第一次使用 Mono。

我将DLL复制到相关子目录,并在这一行修改了该目录的Makefile.am

LINK = -r:$(DIR_BIN)/SparkleLib.dll

...我像这样添加了DotCMIS.dll

LINK = -r:$(DIR_BIN)/SparkleLib.dll:DotCMIS.dll

然后我在项目的根目录下重建了 Makefile:

./autogen.sh
./configure

问题:现在运行make时出现错误:

Making all in SparkleLib/Cmis
Makefile:545: *** multiple target patterns.  Stop.
make: *** [all-recursive] Error 1

它也不适用于-r:$(DIR_BIN)/SparkleLib.dll DotCMIS.dll。 我也尝试添加LIBS=DotCMIS.dllREFERENCES = DotCMIS.dll 行,没有运气。

将 DLL 添加到像这样使用 autogen/configure/Makefiles 的项目的正确语法是什么?

【问题讨论】:

【参考方案1】:

经过反复试验,我最终做出了这个幸运的猜测:

LINK = -r:$(DIR_BIN)/SparkleLib.dll -r:$(DIR_BIN)/DotCMIS.dll

现在编译好了!

【讨论】:

以上是关于Mono:如何在 Makefile.am 中添加 DLL 引用?的主要内容,如果未能解决你的问题,请参考以下文章

如何将预单元测试步骤添加到我的*** Makefile.am?

如何在 Makefile.am 中调整 PATH 变量?

在 Makefile.am 的 C++ 库中编译 C 文件

我应该如何从 Makefile.am 运行预构建的 Makefile?

如何在 Makefile.am 中指定我想要 C++0x?

如何在任何make文件中添加标志