[英]How to build 64-bit Python on OS X 10.6 — ONLY 64 bit, no Universal nonsense
[英]How to actually build 64-bit Python on OS X 10.6.2
為什么? 我想這樣做是因為安裝SciPy推薦它,我認為這將是一個很好的學習經驗。 之前已經問過這個問題(例如這里 )。 首選答案似乎是使用MacPorts,但正如我所說,我想了解它是如何完成的。
無論如何,我抓住源代碼(Python-2.6.4.tgz)並解壓縮。 我閱讀了有關如何構建64位“框架”構建的說明。 據我了解,我應該跑
./configure --enable-framework --enable-universalsdk=/ --with-univeral-archs=intel
配置運行一段時間......並完成。 當我做的時候,顯然有問題:
$ make
gcc -c -arch ppc -arch i386 -isysroot / -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -DPy_BUILD_CORE -o Modules/python.o ./Modules/python.c
In file included from //usr/include/architecture/i386/math.h:626,
from //usr/include/math.h:28,
from Include/pyport.h:235,
from Include/Python.h:58,
from ./Modules/python.c:3:
//usr/include/AvailabilityMacros.h:108:14: warning: #warning Building for Intel with Mac OS X Deployment Target < 10.4 is invalid.
用錯誤的參數調用gcc。 我是否有錯誤的參數配置,或者我應該在環境中設置編譯器標志,或者什么?
編輯:我沒有在配置的輸出中看到任何錯誤...我看到這一行:
checking for OSX 10.5 SDK or later... yes
它結束了
creating Modules/Setup
creating Modules/Setup.local
creating Makefile
編輯2:我以為我是從自述文件復制而來的......
我做到了! 自述文件中有一個拼寫錯誤! 我的年齡相關的閱讀障礙再次起作用。 ;)
您的./configure
選項不正確。 --enable-universalsdk
應該設置為正確的SDK,而不是/
! 這就是為什么gcc
感到困惑,請參閱選項-isysroot
。 因此,請檢查/Developer/SDKs
,並設置正確的/Developer/SDKs
。
此外,你的gcc僅用-arch ppc -arch i386
調用,它不包括-arch x86_64
,它是intel 64位標志。
為了選擇正確的答案,我在上面的評論中解釋:
由於注意到了維吉爾Dupras, 有這個標志一個錯字:
--with-universal-archs=intel
它起源於Mac/readme
文件,但我應該在發布之前抓住它。 另外,我建議您閱讀Ned Deily的非常有用的評論。 看看那些家伙並投票給他們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.