2014-11-14 86 views
0

如何在Mac OS X上使用Clang构建Python?小牛队已经安装了Python 2.7。我问的原因是因为我遇到了试图安装PyLucene的问题,这可能是因为Python是用Clang以外的东西编译的,而作为PyLucene一部分的JCC需要用Clang编译。如何在Mac OS X上使用Clang构建Python Mavericks

+0

你有没有试过Hombrew? http://brew.sh/ brew install python。并看看这个python是否工作。 – 2014-11-14 17:11:44

+0

我做了,但它似乎没有工作,也许是因为与OS X Mavericks随附的预装Python版本冲突 – stevetronix 2014-11-14 17:18:40

+1

Brew的python与系统的python没有冲突,因为它只是将它安装在另一个目录中。 – Kash 2014-11-14 23:15:44

回答

0

我现在看到你的问题。建设JCC时,

clang++ -Wl,-x -dynamiclib -undefined dynamic_lookup build/temp.macosx-10.9-x86_64-2.7/jcc/sources/jcc.o build/temp.macosx-10.9-x86_64-2.7/jcc/sources/JCCEnv.o -o build/lib.macosx-10.9-x86_64-2.7/libjcc.dylib -L/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib -ljava -L/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib/server -ljvm -Wl,-rpath -Wl,/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib -Wl,-rpath -Wl,/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib/server -Wl,-S -install_name @rpath/libjcc.dylib -current_version 2.21 -compatibility_version 2.21 
ld: internal error: atom not found in symbolIndex(__ZN7JNIEnv_13CallIntMethodEP8_jobjectP10_jmethodIDz) for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
error: command 'clang++' failed with exit status 1 

其实这是一个已知的问题,解决的办法是在这里 -x link flag causing link errors on Mac OSX 10.9 (bug?) 只是没有“-x”运行上面铛++命令在同一目录下。然后再次运行“python setup.py build”...