我想在Windows中创build一个静态库(.lib),可以在后续版本中用作未定义函数的“备份”。
例如,假设我有foobar.lib,它定义了:
FOO BAR
而且我还有一些其他的程序只定义了FOO并且被构build到一个必须导出FOO和BAR的DLL中。 我希望能够使用foobar.lib自动导出在生成的DLL中的BAR的默认定义(并忽略foobar.lib中的FOO的定义)。
我已经尝试发送foobar.lib链接器,但我得到了一个多重定义的符号错误(/ FORCE应该覆盖,但强烈的警告,它可能不会按预期工作)。 我也尝试使用/NODEFAULTLIB:foobar.lib,但它完全忽略了库,并说BAR是未定义的。
为什么我没有从g ++得到“多重定义”的错误?
与旧版本的libstdc ++链接
编译的C ++程序提出“不能打开共享目标文件”在另一个系统上,尽pipe该文件存在
C:dynamic链接到OpenSSL库时出错
针对Windows上的Linux进行交叉编译(链接器输出文件不会在Linux上以可执行文件的forms运行,并且具有未定义的符号)
我几乎100%肯定有一种方法可以做到这一点,因为我使用一个应用程序(Abaqus)来允许用户编写插件,而不必为插件DLL定义所有必需的导出。 而且他们不使用/ FORCE选项。
防止从静态库中导入function
在Eclipse CDT中不能指定多个rpath
如何确定EXE(或DLL)是否参与ASLR,即可重定位?
如何控制Windows DLL从应用程序导入哪些符号?
我试图使用一个目标文件(foobar.obj)在foobar.lib中定义FOO和BAR 。 如果我把它分成foo.obj和bar.obj,然后使用它们来创建foobar.lib,链接器可以有效地忽略相应的.obj文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。