ami*_*dio 4 compiler-errors build portaudio osx-lion
我仍然无法在我的系统上构建Portaudio库,这是带有Xcode 4.3.2的OSX 10.7.5,安装了命令行工具并且具有SDK10.6和SDK10.7
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
Run Code Online (Sandbox Code Playgroud)
我很快就描述了(也遇到了遇到同样问题的其他人)我到目前为止所做的事情(遵循我在网上找到的不同解决方案).
1)我从以下网址下载了"Portaudio"/ pa_stable_v19_20111121.tgz(最后稳定版)
www.portaudio.com/download.html
2)我在这里阅读了构建Portaudio的说明:
www.portaudio.com/docs/v19-doxydocs/compile_mac_coreaudio.html
并尝试使用建议的命令从终端窗口进行编译:
./configure && make
这导致(不是那么令人惊讶)在以下结尾的许多错误中:
llvm-gcc-4.2:试图执行'/usr/bin/../llvm-gcc-4.2/bin/powerpc-apple-darwin11-llvm-gcc-4.2'时出错:execvp:没有这样的文件或目录:打开输入文件:/var/folders/1_/xkp08ky561jg02zjjrpsxg940000gn/T//ccPxCTrJ.out(没有这样的文件或目录)make:* [src/hostapi/coreaudio/pa_mac_core.lo]错误1
这是因为自OSX 10.5以来不再支持"ppc".此外,OSX 10.7上不存在"Developer"文件夹,并且Developer文件夹中的所有内容都已移至
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
Run Code Online (Sandbox Code Playgroud)
3)我下载了一个补丁(mac_configure_patch.txt)来修复"configure":
https://www.assembla.com/spaces/portaudio/tickets/216#/activity/ticket:
并将其复制到portaudio目录并通过在终端中键入来应用它:
$ patch <mac_configure_patch.txt
确认消息说:
修补文件configure.in
所以一切似乎都很好.但Portaudio仍在努力建立"ppc".
4)现在我将ARCHFLAGS,CFLAGS,LDFLAGS设置为仅为体系结构i386构建如下(禁用通用构建):
$ MACOSX_DEPLOYMENT_TARGET ="10.7"ARCHFLAGS =" - arch i386"CFLAGS =" - O2 -g -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -arch i386 -mmacosx-version-min = 10.7"LDFLAGS =" - isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sd -arch i386 -mmacosx-version -min = 10.7"./configure --disable-mac-universal
5)进一步我发现:
A):".include/pa_mac_core.h"中的"#include AudioToolbox.h"应该是UNCOMMENTED
B):应删除"Makefile"(不是Makefile.in)中的"-wError".
根据:http://www.fluxforge.com/blog/building-portaudio-under-os-x-107-lion
6)现在我尝试构建(使用:"sudo make"),编译开始但是失败了:
ld:框架未找到CoreAudio
collect2:ld返回1退出状态
make:* [lib/libportaudio.la]错误1
7)所以我尝试使用"-F/System/Library/Frameworks -framework CoreAudio"指向框架
导致以下终端命令:
$ MACOSX_DEPLOYMENT_TARGET = "10.7" ARCHFLAGS = " - 拱i386的" CFLAGS =" - O2 -g -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -arch I386 -mmacosx版本分钟= 10.7" LDFLAGS =" - isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sd -arch I386 -mmacosx版本-min = 10.7 -F /系统/库/框架-framework CoreAudio的"的./configure --disable-MAC-普遍
这似乎修复了CoreAudio框架问题,但导致另一个错误说:
ld:找不到-lSystem的库
collect2:ld返回1退出状态
make:* [lib/libportaudio.la]错误1
我现在陷入困境.尝试使用SDK10.6或SDK10.7在OSX 10.7上构建Portaudio时,是否有人遇到过相同的问题.有没有人找到如何从终端构建Portaudio的解决方案?我非常感谢任何提示!提前致谢!
试试最新的svn.如果这不起作用,你可能需要捣乱一些旗帜.
例如,在configure.in中:
然后运行
./configure --disable-mac-universal
Run Code Online (Sandbox Code Playgroud)
像往常一样.
归档时间: |
|
查看次数: |
4088 次 |
最近记录: |