我正在尝试使用Python 2.7安装MySQLdb。我收到的错误如下所示:
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/include/mysql -I/opt/python2.7/include/python2.7 -c _mysql.c -o build/temp.linux-x86_64-2.7/_mysql.o -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 gcc -pthread -shared build/temp.linux-x86_64-2.7/_mysql.o -L/usr/lib64/mysql -L. -lmysqlclient_r -lz -lpthread -lcrypt -lnsl -lm -lpthread -lmygcc -lpython2.7 -o build/lib.linux-x86_64-2.7/_mysql.so /usr/bin/ld: cannot find -lpython2.7 collect2: ld returned 1 exit status error: command 'gcc' failed with exit status 1
显然,它找不到Python 2.7。展望/usr/bin我看到:
/usr/bin
python* python2@ python2.4* python2.7@
该@符号是什么意思?谁能建议对此错误采取补救措施?
@
它找不到Python库,而不是可执行文件。运行locate libpython2.7.a以查看Python库的位置,然后将其添加到库路径(例如,如果位于中/opt/python2.7/lib,则要调用LDFLAGS="-L/opt/python2.7/lib" make)。
locate libpython2.7.a
/opt/python2.7/lib
LDFLAGS="-L/opt/python2.7/lib" make
该@符号意味着该文件是一个符号链接; *表示它是可执行文件(这些文件由产生ls -F,您可能将其作为别名)。
*
ls -F