2013-10-13 102 views
1

我想編譯Niotso,但是我從源代碼構建時遇到了問題。ld.exe:找不到-lmsvcrt

我想我可能會錯過一些東西很明顯,所以如果有人知道我可能做錯了,請讓我知道

c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.8.1/../../../../x86_64-w64-mingw3 
2/bin/ld.exe: skipping incompatible c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32 
/4.8.1/../../../../x86_64-w64-mingw32/lib/libmsvcrt.a when searching for -lmsvcrt 
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.8.1/../../../../x86_64-w64-mingw3 
2/bin/ld.exe: skipping incompatible c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32 
/4.8.1/../../../../x86_64-w64-mingw32/lib\libmsvcrt.a when searching for -lmsvcrt 
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.8.1/../../../../x86_64-w64-mingw3 
2/bin/ld.exe: skipping incompatible c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32 
/4.8.1/../../../../x86_64-w64-mingw32/lib/libmsvcrt.a when searching for -lmsvcrt 
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.8.1/../../../../x86_64-w64-mingw3 
2/bin/ld.exe: cannot find -lmsvcrt 
collect2.exe: error: ld returned 1 exit status 
_deps\freetype\CMakeFiles\freetype_shared.dir\build.make:323: recipe for target 
'../_dist/windows/freetype.dll' failed 
mingw32-make[2]: *** [../_dist/windows/freetype.dll] Error 1 
CMakeFiles\Makefile2:77: recipe for target '_deps/freetype/CMakeFiles/freetype_s 
hared.dir/all' failed 
mingw32-make[1]: [_deps/freetype/CMakeFiles/freetype_shared.dir/all] Error 2 
Makefile:74: recipe for target 'all' failed 
mingw32-make: [all] Error 2 
+1

對我來說,就像你在建立一個32位應用程序,當你只有64位庫可用時。但我猜測。 – john

回答

2

你MinGW的工具鏈的分佈是單目標,並針對64位。可能在Niotso構建系統的某個位置包含-m32開關,該開關強制執行32位編譯模式。但由於您的工具鏈不包含32位版本的libmsvcrt.a,因此它抱怨它確實找到了64位版本的libmsvcrt.a,但它需要32位版本,因此跳過了前者。

你有3種選擇:

  1. 期待通過Niotso(不管它是什麼)的構建系統的 -m32標誌,並嘗試消除它,然後你會產生Niotso的64位二進制文​​件;
  2. 將MinGW分佈更改爲單目標(定位32位), 然後您將生成Niotso的32位二進制文​​件;
  3. 將MinGW分佈更改爲雙目標(同時針對32位的 和64位),然後再次生成32位的Niotso二進制文件;

    NOTE:我知道的雙目標唯一的工具鏈是基於TDM-GCC和SJLJ的MinGW-w64。

+0

謝謝,這對我有用。但是,我有一個新的問題,我正在提出一個新的問題。如果你有空閒時間,什麼時候到了,你可以看看嗎? –

+0

當然,讓我們看看。 –

+0

http://stackoverflow.com/questions/19346667/error-invalid-instruction-suffix-for-push –