2016-02-18 38 views
0

當我嘗試運行運行make這個工具我得到這個錯誤:我不能運行在Debian中(C/C++)的工具

[email protected]:/home/teamspeak3-user/f2/Ns# make 
g++ -pthread -lc++abi -lc++ -lsupc++ ntp.o checksum.o -o ntp 
/usr/bin/ld: cannot find -lc++abi 
/usr/bin/ld: cannot find -lc++ 
collect2: error: ld returned 1 exit status 
<builtin>: recipe for target 'ntp' failed 
make: *** [ntp] Error 1 
[email protected]:/home/teamspeak3-user/f2/Ns# 

這裏是什麼地方的問題呢?我運行的是debian服務器。

+0

問題與C#無關,因此刪除了標籤。 – HimBromBeere

+2

['libC++'](http://libcxx.llvm.org/)和['libC++ abi'](http://libcxxabi.llvm.org/)是[Clang]標準C++庫的一部分, (http://clang.llvm.org/)。在編譯GCC時不應該使用它們。 ['libsupC++'](http://libcxx.llvm.org/#libsupcxx)是標準C++庫的另一種變體,這意味着您實際上試圖與* 3個標準庫('libC++','libsupC++'和GCC標準'libstdC++')。 –

回答

0

如果您向我們提供了工具源代碼的鏈接(我猜這是您下載的內容),它將有助於爲您提供修復程序。

正如Joachim Pileborg在評論中所解釋的,您正在鏈接三個不同的C++標準庫,並且找不到其中的兩個。你只需要從命令行中刪除它們。

一個選項是編輯makefile以刪除對libc++libsupc++的引用。

但是,理解這個奇怪的結果來自哪裏是很好的(也許會給項目打開一個問題,以便他們修復某些問題)。在運行make之前你運行了./configure嗎?或者另一個命令生成Makefile