Fatal error: #include <stdio.h> generated after “pip install mysql-python” command

放肆的年华 提交于 2019-12-08 08:21:23

问题


Like many people, I am having issues getting mysql and python to work together. My specs are:

OSX10.9.2 Anaconda 1.9.1 with python 2.7.2, although 2.5 and 2.6 appear to be included MySQL 5.6.16

I have written a python script where I try to import MySQLdb, or PyMySQL then MySQLdb, neither works.

I read many of the threads on stack overflow, and as a result I eventually tried

$ export CFLAGS=-Qunused-arguments
$ export CPPFLAGS=-Qunused-arguments
$ pip install mysql-python

The results are below. A fatal error was issued, as can be seen at the bottom of the output.

Downloading/unpacking mysql-python Downloading MySQL-python-1.2.5.zip (108kB): 108kB downloaded Running setup.py (path:/private/var/folders/lx/h7jq_qx92_j0n7plsjmr6wl40000gp/T/pip_build_vincent/mysql-python/setup.py) egg_info for package mysql-python

Installing collected packages: mysql-python Running setup.py install for mysql-python building '_mysql' extension /usr/bin/clang -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Qunused-arguments -Qunused-arguments -Dversion_info=(1,2,5,'final',1) -D_version_=1.2.5 -I/usr/local/mysql/include -I/Users/vincentlaufer/anaconda/include/python2.7 -c _mysql.c -o build/temp.macosx-10.5-x86_64-2.7/_mysql.o -Os -g -fno-strict-aliasing -arch x86_64 In file included from _mysql.c:29: /Users/vincent/anaconda/include/python2.7/Python.h:33:10: fatal error: 'stdio.h' file not found #include ^ 1 error generated. error: command '/usr/bin/clang' failed with exit status 1 Complete output from command /Users/vincentlaufer/anaconda/bin/python -c "import setuptools, tokenize;file='/private/var/folders/lx/h7jq_qx92_j0n7plsjmr6wl40000gp/T/pip_build_vincent/mysql-python/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /var/folders/lx/h7jq_qx92_j0n7plsjmr6wl40000gp/T/pip-6aqGYj-record/install-record.txt --single-version-externally-managed --compile: running install

running build

running build_py

creating build

creating build/lib.macosx-10.5-x86_64-2.7

copying _mysql_exceptions.py -> build/lib.macosx-10.5-x86_64-2.7

creating build/lib.macosx-10.5-x86_64-2.7/MySQLdb

copying MySQLdb/init.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb

copying MySQLdb/converters.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb

copying MySQLdb/connections.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb

copying MySQLdb/cursors.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb

copying MySQLdb/release.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb

copying MySQLdb/times.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb

creating build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/init.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/CR.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/ER.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/FLAG.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/REFRESH.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

copying MySQLdb/constants/CLIENT.py -> build/lib.macosx-10.5-x86_64-2.7/MySQLdb/constants

running build_ext

building '_mysql' extension

creating build/temp.macosx-10.5-x86_64-2.7

/usr/bin/clang -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Qunused-arguments -Qunused-arguments -Dversion_info=(1,2,5,'final',1) -D_version_=1.2.5 -I/usr/local/mysql/include -I/Users/vincent/anaconda/include/python2.7 -c _mysql.c -o build/temp.macosx-10.5-x86_64-2.7/_mysql.o -Os -g -fno-strict-aliasing -arch x86_64

In file included from _mysql.c:29: /Users/vincent/anaconda/include/python2.7/Python.h:33:10: fatal error: 'stdio.h' file not found

include stdio.h

     ^

1 error generated.

error: command '/usr/bin/clang' failed with exit status 1


Cleaning up... Command /Users/vincent/anaconda/bin/python -c "import setuptools, tokenize;file='/private/var/folders/lx/h7jq_qx92_j0n7plsjmr6wl40000gp/T/pip_build_vincent/mysql-python/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /var/folders/lx/h7jq_qx92_j0n7plsjmr6wl40000gp/T/pip-6aqGYj-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/var/folders/lx/h7jq_qx92_j0n7plsjmr6wl40000gp/T/pip_build_vincent/mysql-python Storing debug log for failure in /Users/vincentlaufer/.pip/pip.log

I would like to thank everyone for the many answers provided that got me this far already, but also to ask if anyone knows how to solve this issue. Thank you!!


回答1:


Inclusion of the line:

$ xcode-select --install 

solves this problem, as per: GCC fatal error: stdio.h: No such file or directory



来源:https://stackoverflow.com/questions/22603195/fatal-error-include-stdio-h-generated-after-pip-install-mysql-python-comma

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!