跨平台編譯#

跨平台編譯是一個複雜的主題,我們在這裡僅添加一些可能有用的提示(目前而言)。截至 2023 年 5 月,已知基於 crossenv 的跨平台編譯是可行的,例如 conda-forge 中使用的那樣。不使用 crossenv 的跨平台編譯需要一些手動覆寫。您可以透過 meson-python 將選項傳遞給 meson setup 來指示這些覆寫。

所有已知成功跨平台編譯 NumPy 的發行版都使用 python -m build (pypa/build),但使用 pip 應該也是可行的。以下是這些發行版上 NumPy “建置配方” 的連結

另請參閱 Meson 關於跨平台編譯的文件,以了解您可能需要傳遞給 Meson 以成功進行跨平台編譯的選項。

一個可能的障礙是,建置需要運行已編譯的可執行檔,以確定主機平台的 long double 格式。這可能是一個障礙,因為它需要 crossenv 或 QEMU 來運行主機(跨平台)Python。為了避免這個問題,請在您的交叉檔案中指定相關目錄的路徑。

[properties]
longdouble_format = 'IEEE_DOUBLE_LE'

有關跨平台編譯的更多詳細資訊和當前狀態,請參閱