我的問題開始相同方式分享:Python executable not finding libpython shared library用Cython沒有找到共享庫
我更新的.bashrc與export LD_LIBRARY_PATH=$HOME/local/lib/python/2.7.6/lib
,事情都很好。 Python工作,我安裝了點子。但是現在,我在用pip安裝cython時遇到了類似的情況。
gcc -pthread -shared build/temp.linux-x86_64-2.7/tmp/pip_build/cython/Cython/Plex/Scanners.o -L. -lpython2.7 -o build/lib.linux-x86_64-2.7/Cython/Plex/Scanners.so
/usr/bin/ld: cannot find -lpython2.7
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
我無法添加到$HOME/local/lib/python/2.7.6/lib
和/etc/ld.so.conf
運行ldconfig
因爲我沒有根:當我執行pip install cython
我收到此錯誤信息。我的印象是設置LD_LIBRARY_PATH是解決這個問題的方法,但是這對於編譯來說似乎並不正確。有沒有辦法讓編譯器在不運行root命令的情況下查看本地庫?
我想你沒有運氣提到的事情。我能夠通過運行'CFLAGS =「... pypath .../lib」python setup.py install'來構建cython。它感覺不對,但至少它建立了。但是,當我嘗試用類似的技巧來構建numpy時,我遇到了同樣的問題,但是使用gfortran。指定CFLAG和FFLAG不起作用。這有些不對勁。 –
@chester已更新。 – Schollii
在你的更新:是的,這就是爲什麼我以前的評論允許cython編譯。我其實打算把CFLAGS =「 - L ... pypath .../lib」。這更像是一種解決方法,因爲它不適用於我剛纔提到的numpy安裝。設置'LIBRARY_PATH'是使編譯器知道'... pythonpath .../lib'目錄中的'libpython2.7.so'的適當方法。我很感激你花時間看這個。 –