2016-07-16 85 views
0

我正在嘗試使用此頁面上的庫從portaudio構建示例代碼。 https://github.com/adfernandes/precompiled-portaudio-windows在C上構建Portaudio上的崇高文本3

我的崇高-build文件如下:

{ 
    "cmd" : ["gcc", "$file_name", "-L/Desktop/portaudio-r1891-build/lib/x64/ReleaseMinDependency", "-llibportaudio_x64", "-o", "${file_base_name}.exe", "&&", "${file_base_name}.exe"], 
    "selector" : "source.c", 
    "shell" : true, 
    "working_dir" : "$file_path" 
} 

我收到錯誤「C:/ MinGW的/ bin中/../ lib中/ GCC/mingw32的/ 4.9.3 /../。 ./../../mingw32/bin/ld.exe:找不到-llibportaudio_x64

我是新來製作文件,所以我不確定什麼是不正確的。沒有portaudio補充,make文件正確地構建了一個Hello World測試代碼portaudio的東西不在標準路徑中,我在portaudio示例代碼中包含「#portlude portaudio.h」,在示例代碼的同一文件夾中包含.h文件。我有我的桌面上的庫的文件夾,並試圖用-L命令將其路徑鏈接到該文件夾​​。我見過一些人在討論有關.a文件的問題,但我似乎沒有下載該庫的文件。

+0

在''gcc「'後面加''-m64''是否修好? – a3f

+0

我懷疑這個語法可能會導致問題'-llibportaudio_x64'。請改用'-lportaudio_x64'。 – user3078414

+0

@ a3f這樣做給了錯誤「paex_sine.c:1:0:對不起,未實現:未在/ ** @文件paex_sine.c中編譯的64位模式」 – ctodd

回答

0

您正在將您的32位程序與64位版本的DLL進行鏈接。

將鏈接路徑(-L)更改爲32位DLL的位置或使用64位編譯器。

起初我懷疑這是缺少的lib前綴,但MinGW文檔說在Windows上可以省略lib