[英]ld: library not found for -lDoubleConversion clang: error: linker command failed with exit code 1 (use -v to see invocation)
[英]Library not found for -llib. (clang: error: linker command failed with exit code 1 (use -v to see invocation))
我正在開發一個以前完成並上傳到app store的項目。當我在Xcode 5.0中運行這個應用程序時,它工作正常,但是當我在Xcode版本5.1.1(5B1008)上運行時,我在兩個設備上都收到鏈接器錯誤和模擬器。
錯誤消息 - 找不到-llib的庫。 (clang:錯誤:鏈接器命令失敗,退出代碼為1(使用-v查看調用)) 。
我已經搜索了很多,但我沒有得到任何關於Library not found for -llib
錯誤Library not found for -llib
。 有什么我必須在構建設置中更改以解決此問題?
查看正在使用的-L
選項的鏈接器命令行:
然后使用Terminal或Finder查看這些目錄中是否存在libXXX.a
文件。 如果庫存在於其他位置,則需要配置庫搜索路徑 :
但是,在應用程序中使用庫時,您在問題中未提供的一些詳細信息:
.a
)和頭文件(如第二個圖像)? TL; DR:我在錯誤的目錄中運行make
,所以路徑搞砸了。
問題:
>make
linking ../build/release/yubikey-personalization-gui
/usr/x86_64-suse-linux/bin/ld: cannot find -llib
...
在編譯Yubikey個性化工具時遇到了這個問題。 我在Makefile
跟蹤-llib
調用,如下所示:
...
LINK = @echo linking $@ && g++
...
LIBS = $(SUBLIBS) -L/usr/lib64 -L../lib/release -llib -lyubikey -lykpers-1 -lQtGui -L/usr/lib64 -L/usr/X11R6/lib -lQtCore -lpthread
...
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
所以它設置了一個名為LINK
的變量,它將打印“鏈接”,然后調用g++
,這是編譯器。 然后設置var LIBS
,它將保存不祥的-llib
。 然后它編寫並運行命令$(LINK) ... $(LIBS)
。 其中使用參數-llib
運行g++
。
這有什么作用? 結果是-l<something>
告訴編譯器使用something
-library。 所以它在這里請求名為lib
的庫。 這是奇怪的通用。 我發現源代碼附帶了一個名為lib/
的目錄,它位於../lib
。
所以從一個更高的目錄開始make
修復它。
您應該從xcode項目中的其他鏈接器標志中刪除libstdc ++
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.