Tôi đã thử vô số giải pháp tại thời điểm này và không có gì có vẻ hoạt động. Tôi đang cố gắng để cài đặt mysql-python, nhưng điều này xảy ra với NumPy và các gói khác cần gcc cũng như:pip tăng stdio.h không tìm thấy lỗi trên Mac OS X Mavericks (10.9)
building '_mysql' extension
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -g -O2 -DNDEBUG -g -O3 -Dversion_info=(1,2,5,'final',1) -D__version__=1.2.5 -I/usr/local/mysql/include -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _mysql.c -o build/temp.macosx-10.6-intel-2.7/_mysql.o -Os -g -fno-strict-aliasing -arch x86_64
In file included from _mysql.c:29:
/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:33:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
^
1 error generated.
error: command 'gcc-4.2' failed with exit status 1
Để chỉ:
Tôi đã cài đặt các công cụ dòng lệnh
gia tăng liên kết tượng trưng từ/usr/bin/gcc để /usr/bin/gcc-4.2
gcc-4.2 --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix
tạo một file c giả, biên soạn thành công, và chạy nó, vì vậy gcc bản thân là tốt
$ cat a.c
#include <stdio.h>
main()
{
printf("hello\n");
}
$ gcc-4.2 a.c
a.c:3:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
main()
^~~~
1 warning generated.
$ ./a.out
hello
Và đối với biện pháp tốt,
$ xcode-select -p
/Library/Developer/CommandLineTools
gì đang xảy ra ?!
EDIT - Quên bao gồm python phiên bản
$ python
Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
EDIT - phát triển thú vị. Thiết các biến này làm cho một số tiến bộ:
$ export CFLAGS="-arch i386 -arch x86_64"
$ export FFLAGS="-m32 -m64"
$ export LDFLAGS="-Wall -undefined dynamic_lookup -bundle -arch i386 -arch x86_64"
$ export CC=gcc-4.2
$ export CXX="g++ -arch i386 -arch x86_64"
Tuy nhiên nó không thành công một lần nữa tại
gcc-4.2 -bundle -undefined dynamic_lookup -isysroot /Developer/SDKs/MacOSX10.6.sdk -isysroot /Developer/SDKs/MacOSX10.6.sdk -g -Wall -undefined dynamic_lookup -bundle build/temp.macosx-10.6-intel-2.7/_mysql.o -L/usr/local/mysql/lib -lmysqlclient_r -o build/lib.macosx-10.6-intel-2.7/_mysql.so -arch x86_64
ld: library not found for -lSystem
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'gcc-4.2' failed with exit status 1
tôi nghi ngờ đó là một lỗi tương tự có để làm với các công cụ lệnh. Ngoài ra, tại sao nó sử dụng "/Developer/SDKs/MacOSX10.6.sdk"? (Xin lỗi các câu hỏi noob, tôi đang cố gắng để di chuyển từ vim/unix để pycharm/mac và nó sẽ không rất tốt cho đến nay :()
Có lý do nào bạn đang sử dụng 2.7.2 không? Tôi nghĩ 10,9 vận chuyển với 2,7,4.? Bạn đã pha cài đặt python chưa? – wegry
Tôi đã nâng cấp từ Snow Leopard, tôi đoán Mavericks đã không thực sự nâng cấp Python? Tôi chưa cài đặt nó theo cách thủ công. – beans
Tôi sẽ thử cài đặt brew. Và sau đó làm một python cài đặt brew. Nó sẽ cài đặt pip. Nó cũng sẽ cho bạn biết nếu các công cụ dòng lệnh của bạn đã lỗi thời và giúp bạn thực hiện điều đó. Hy vọng rằng nó sẽ làm cho mọi thứ ít đá trên OS X. – wegry