簡體   English   中英

使用Python 3.4在OSX上構建圖形工具

[英]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"
在您的情況下,它將是homebrewpython3.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM