在Windows 7上链接.lib文件

时间:2016-07-26 08:07:36

标签: c++ windows path g++

我有一个C ++程序test.cpp,我想将两个.lib文件链接到它(fhlib.lib和gc_lib.lib)。我的.lib文件与我的.cpp程序在同一个文件夹中。我在Windows 7上。

到目前为止我所尝试的是以下内容:

g++ -o main main.cpp -L/Users\Documents\Visual Studio 2015\Projects\My Project -lfhlib

但我得到了

No such file or directory error.

我确定路径正确,因为我从Properties-> Location复制了它。但我删除了" C:\",因为它没有编译。

编辑:我发现了http://www.mingw.org/wiki/Specify_the_libraries_for_the_linker_to_use

所以我尝试使用

"-I" instead of "-l"

但仍然无法工作。我得到:

undefined reference to 'fh_set'...

2 个答案:

答案 0 :(得分:3)

如果您在Windows上使用g ++进行编译,我猜您正在使用MinGW:MinGW依赖于.a库。使用“-l”选项时,编译器正在查找扩展名为.a。

的库文件

.lib格式的库使用visual studio编译:您不能将其用作此类。如果您有源代码或者考虑将项目迁移到visual studio,请使用MinGW编译库。

答案 1 :(得分:0)

所以问题是在VS中编译的lib文件。我不得不使用VS编译器而不是g ++,一切正常。