[英]Building graph-tool on OSX with Python 3.4
我嘗試使用自制軟件在Mac OSX 10.10上安裝圖形工具。 brew構建過程工作正常,但是當我嘗試導入圖形工具時,我得到了這個問題中描述的錯誤 。 自制軟件的另一個問題是我總是為python2.7構建圖形工具,並將軟件包安裝在Python 2.7 sit-packages文件夾中。 但我想在Python 3.4中使用它。 這些是我嘗試從源代碼構建圖形工具的原因。
./configure
命令也自動使用Python 2.7。 所以我用./configure PYTHON=python3.4
傳遞了所需的Python版本
然后它會檢測正確的版本以及相關路徑,但會因以下錯誤而崩潰:
配置:錯誤:
無法將測試程序鏈接到Python。 也許主要的Python庫已經安裝在一些非標准的庫路徑中。 如果是,請通過LDFLAGS環境變量將其傳遞給configure。
示例:./ configure LDFLAGS =“ - L / usr / non-standard-path / python / lib”================================================== ====================錯誤! 您可能必須為您的發行版安裝Python包的開發版本。 這個包的確切名稱因其而異。
================================================== ====================
使用和不使用PYTHON
變量時會發生錯誤。 從./configure
的輸出我可以看到一切正常,除了最后一行,它說:
檢查python開發環境的所有組件的一致性...沒有
上述行是什么意思,我如何在我的機器上正確安裝圖形工具?
該錯誤消息說明需要做什么 。 由於python安裝在非標准路徑中,因此需要傳遞指向python庫所在目錄的標志LDFLAGS="-L/usr/non-standard-path/python/lib"
。 如果您使用自制軟件,這很可能是"/usr/local/lib"
。
當我嘗試使用過時的autoconf
/ automake
/ pkg-config
組合(使用CentOS 5.10中的yum
安裝)安裝graph-tool
時,我收到此錯誤。 從源代碼安裝這些軟件包修復了問題...雖然我不確定這與我的python安裝有什么關系....
它通過傳遞變量PYTHON_EXTRA_LDFLAGS="-Wl,-stack_size,1000000 -F/usr/local/Cellar/python3/3.6.3/Frameworks -framework CoreFoundation"
。
在您的情況下,它將是homebrew
的python3.4
安裝的python3.4
。
我發現的方法是在config.log
,錯誤消息顯示以下內容:
configure:19023: checking python extra libraries
configure:19030: result: -ldl -framework CoreFoundation
configure:19037: checking python extra linking flags
configure:19044: result: -Wl,-stack_size,1000000 -framework CoreFoundation Python.framework/Versions/3.6/Python
configure:19051: checking consistency of all components of python development environment
configure:19079: gcc -o conftest -g -O2 -DNDEBUG -I/usr/local/Cellar/python3/3.6.3/Frameworks/Python.framework/Versions/3.6/include/python3.6m -F/usr/local/Cellar/python3/3.6.3/Frameworks/ -Wl,-stack_size,1000000 -framework CoreFoundation Python.framework/Versions/3.6/Python conftest.c -L/usr/local/opt/python3/Frameworks/Python.framework/Versions/3.6/lib -lpython3.6m -ldl -framework CoreFoundation -ldl -framework CoreFoundation >&5
clang: error: no such file or directory: 'Python.framework/Versions/3.6/Python'
錯誤似乎是路徑'Python.framework/Versions/3.6/Python'
,在homebrew
安裝中不存在。 我在config.log
搜索相同的路徑,我找到了這一行:
PYTHON_EXTRA_LDFLAGS="-Wl,-stack_size,1000000 -framework CoreFoundation Python.framework/Versions/3.6/Python"
所以,我的解決方案是用正確的路徑傳遞這個變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.