如何通过修复`apxs:Error:Command failed with rc = 65536`在Mountain Lion(Mavericks)上编译mod_wsgi,mod_fastcgi等?


22

我已经更新到OS X Mountain Lion。更新已删除我所有的python和apache模块,包括mod_wsgi。

现在,我正在尝试重新编译mod_wsgi(它在Lion上编译没有问题)。

我从这里使用源代码:http : //code.google.com/p/modwsgi/wiki/DownloadTheSoftware?tm=2

./configure创建Makefile不会出现问题:

$ ./configure
checking for apxs2... no
checking for apxs... /usr/sbin/apxs
checking Apache version... 2.2.22
checking for python... /usr/bin/python
configure: creating ./config.status
config.status: creating Makefile

但是使返回错误:

$ make
/usr/sbin/apxs -c -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -DENABLE_DTRACE -DMACOSX -DNDEBUG -DNDEBUG -DENABLE_DTRACE  -Wc,'-arch x86_64' mod_wsgi.c -Wl,-F/System/Library/Frameworks -framework Python -u _PyMac_Error /System/Library/Frameworks/  -arch x86_64 -ldl  -framework CoreFoundation  
/usr/share/apr-1/build-1/libtool --silent --mode=compile /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain/usr/bin/cc    -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/local/include -I/usr/include/apache2  -I/usr/include/apr-1   -I/usr/include/apr-1  -arch x86_64 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -DENABLE_DTRACE -DMACOSX -DNDEBUG -DNDEBUG -DENABLE_DTRACE  -c -o mod_wsgi.lo mod_wsgi.c && touch mod_wsgi.slo
env: /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain/usr/bin/cc: No such file or directory
apxs:Error: Command failed with rc=65536
.
make: *** [mod_wsgi.la] Error 1

Answers:


32

我在写问题时解决了这个问题:

出于某种原因,/Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain/文件夹(包含Xcode命令行工具)位于此处:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain

解决问题:

$ sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/ /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain

Greg Bair对小牛的建议:

$ sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/ /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain

这将创建符号链接到正确的文件夹。


4
应该强调的是,据我所知,这是苹果提供的apxs构建配置的问题,与mod_wsgi无关。它是在Mountain Lion发布之前提出的,有人以某种方式向Apple提供了反馈,但Apple并未解决。这个问题很可能会影响使用apxs而不仅仅是mod_wsgi构建Apache模块的任何尝试。
格雷厄姆·邓普顿

我提交的问题似乎与功利相关。由于某种原因,它认为编译器(gcc)位于其他文件夹中。它可以通过创建符号链接来简单地修复(有关详细信息,请参见我的答案)。sudo make install之后也可以。
丹尼尔·里日科夫

假定与旧版MacOS X的文件位置相同,则问题将出在apxs使用的/usr/share/httpd/build/config_vars.mk中的定义中。
Graham Dumpleton,2012年

正如@GrahamDumpleton建议的那样,此解决方案还修复了mod_fastcgi v2.4.6所产生的问题。
格雷厄姆·米尔恩

3
请注意,这也适用于小牛队,但应该是 $ sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/ /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain
Greg Bair

2

遇到相同的问题,但是创建符号链接并没有为我解决。所做的工作是将标志添加--disable-framework./configure命令。有关更多详细信息,请参见要点

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.