cygwin无法链接.a文件与main

时间:2013-03-15 11:14:10

标签: gcc compilation linker cygwin

我在c中做了一个简单的库,我编写了我的代码并且正在编译。我从我的库中创建了一个存档文件.a。

为了测试,我用main创建了一个测试文件。测试文件正在编译,但每当我尝试引用我创建的.a静态库时,就会出现这个错误:

/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld: cannot find -llibllist
collect2: ld returned 1 exit status

我认为这意味着它无法按预期找到它。 我正在使用gg和ld的cygwin。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

-l开关会隐式地将lib前缀和.a后缀添加到传递给它的名称中,因此如果您的库名为libllist.a,则应引用它-lllist。您还需要确保库位于库搜索路径中。另请参阅-L开关。或者您可以在没有-l切换到gcc。

的情况下传递完整的库名称