[英]Installing multiple python packages that requires different LDFLAGS/CPPFLAGS (macOS Big Sur Apple Silicone)
[英]Pass LDFLAGS and CPPFLAGS to Poetry when adding packages
編輯:我的解決方法最終是將在 Poetry 外部構建的whl
文件添加到存儲庫,並將 pyodbc 作為文件添加到 Poetry.
我正在嘗試在我的 M1 Mac 上為 Poetry 范圍內的項目安裝 pyodbc。
按照pyodbc wiki 頁面上的說明安裝 Poetry 的“外部”沒有問題。
但是,在新項目中使用poetry add pyodbc
時,我收到一條錯誤消息,指出sql.h
文件。
我有一種感覺,pyodbc 指令頁面中給出的修復程序無法從 Poetry 環境中獲得。 關於如何在 Poetry 環境中安裝此軟件包的任何提示? 有沒有辦法將詩歌指向額外的 LDFLAGS 和 CPPFLAGS?
詩歌確實傳遞LDFLAGS
和CPPFLAGS
。 我剛剛收到同樣的錯誤,可以確認以下內容在 M1 Mac 上有效:
brew install unixodbc
export LDFLAGS=-L/opt/homebrew/lib
export CPPFLAGS=-I/opt/homebrew/include
poetry add pyodbc
使用 Poetry 版本 1.1.13 和 Python 3.9.10
(注意:您也可以使用poetry shell
激活 virtualenv 並在其中運行pip install pyodbc
(在設置 LDFLAGS 和 CPPFLAGS 之后)。構建的包現在應該被緩存,以便您可以在之后使用poetry add
添加它。雖然不是一個理想的解決方案,因為它會在更新時中斷)。
更新:在https://github.com/mkleehammer/pyodbc/pull/870有一個開放的拉取請求,它使用odbc_config --cflags --libs
添加了對路徑的自動檢測,請隨時投票。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.