2016-09-26 121 views
2

我有一個Python 2.7項目,迄今爲止一直使用gfortran和MinGW來構建擴展。我使用MinGW,因爲它似乎支持Fortran代碼中的寫入語句和可分配數組,而MSVC則不支持。構建Python 3.5的擴展程序或C擴展的2.7

還有一個項目我想加入到我自己的(Netgen)中,但是它目前是使用Boost.Python爲Python 3.5設置的。我首先嚐試將我自己的程序轉移到Python 3.5,但這是我提醒MSVC問題的地方,顯然MinGW不受支持。出於這個原因,我一直在想辦法編譯Netgen + Boost.Python以便在Python 2.7中進行部署。

我認爲Boost部分很簡單,但似乎我需要Visual C++ 2008才能使它與Python 2.7集成。我有Microsoft的Visual C++編譯器for Python 2.7,但我沒有得到它在CMake構建系統中工作。我將它指向VC for Python文件夾中的cl.exe編譯器,並且CMake總是告訴我構建一個簡單的測試程序失敗。因爲我實際上並沒有(也找不到)Visual Studio 2008,不知道我能得到多遠。

有很多地方可能有問題,但我只是尋找一個去/不去的答案,如果這就是它。任何解決方案顯然會受到歡迎。

我正在運行Windows 10 64位。我不是C/C++專家,但似乎我擁有使用Python for Python工具(cl,link等)編譯Netgen所需的所有工具。我只是沒有/不知道如何把它們放到一個項目或類似的東西中。

+0

嘗試選擇更相關且更多關注者的標籤。 [標籤:fortran]就是其中之一 –

回答

0

我使用VC 14.0爲Python 2.7構建了Boost.Python庫1.61.0。然後在Netgen的構建過程中使用它(再次使用VC 14.0),並指向Python 2.7庫幷包含目錄(與Python 3.5相反)。迄今爲止,這在Python 2.7中與我現有的代碼一起工作。

+0

這是爲了評論或回答你自己的問題嗎? – Peaceful