【发布时间】:2021-11-13 15:30:52
【问题描述】:
我正在尝试制作将从 FileVersionInfo 返回版本的函数,
到目前为止,我构建了函数,但是当我想包含 version.lib 时遇到问题
#pragma comment(lib, "version.lib")
我已尝试链接 libversion.a,类似这样的内容
#pragma comment(lib, "libversion.a")
但是,编译器再次像第一次一样返回错误
Pragma 忽略注释 [-Werror=unknown-pragmas]
我试过了,很多来自互联网的组合,我什至都记不住了。我正在使用 MinGW 编译器。 谢谢你的时间我appricitate :)
【问题讨论】:
-
看起来 GCC 不支持那个特定的编译指示。
-
使用
-l标志指定要链接的库。 See here。您可能需要使用-L标志来通知链接器它需要搜索库的目录。 -
这能回答你的问题吗? #pragma comment(lib, "xxx.lib") equivalent under Linux?(这个问题是关于 Linux 的,但本质上它似乎是关于 GCC 等价物)
-
另请注意,unknown-pragmas 只是一个警告,但
-Werror将其提升为错误。您可以使用-Wno-error=unknown-pragmas将该诊断降级为警告,或者使用-Wno-unknown-pragmas将其完全静音。 -
@prapin "只有 MSVC 支持(我认为)从 C++ 源代码链接库的编译指示" - MSVC 不是唯一支持此功能的编译器。 C++Builder 也支持它。