2013-03-15 39 views
0

我正在做一個簡單的庫在c中,我寫了我的代碼,它正在編譯。我從我的庫中創建了一個存檔文件.a。cygwin connot鏈接.a主文件

爲了測試我用main創建了一個測試文件。測試文件編制,但每當我想引用我的。一個靜態庫,我創建了一個,它給這個錯誤:

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

我認爲,這意味着它不能找到它的預期。 我正在使用cygwin與gcc和ld。

任何幫助,將不勝感激。

+0

我想你已經解決了它! 'ld'找不到你的'libllist.a'文件。下一個問題;爲什麼不?它存在嗎? 'ld'在正確的地方看嗎? ... – AlG 2013-03-15 12:03:42

回答

0

-l開關隱含添加lib前綴和後綴.a傳遞給它的名字,因此,如果您的庫稱爲libllist.a,你應該-lllist引用它。您還需要確保該庫位於庫搜索路徑中。另請參閱-L開關。或者,您可以在沒有將-l切換到gcc的情況下傳遞完整的庫名稱。