我似乎無法導入位於「lib-dynload」目錄中的任何基本模塊。他們都在那裏,但我試圖導入它們時出現錯誤:"ImportError: No module named X"
。交叉編譯的Python無法找到基本模塊(數學,運算符等)
我檢查了我的sys.path
,它包含所有這些模塊所在的目錄,並且我的PYTHONHOME環境變量設置正確。我對這個問題可能會有點不知所措。一些背景信息:這是從Python 2.6.6源代碼交叉編譯並安裝到帶有Angstrom的ARM嵌入式Linux板上。
它確實在那裏有python,我試圖把它燒成圖像,但它缺少很多東西。我最終在加載交叉編譯版本之前盡我所能清理與前一個python有關的任何目錄樹。
,僅僅嘗試導入math
一個簡單的腳本的strace的:http://pastebin.com/3XgJ3nPR
你會碰巧知道要設置什麼標誌或變量來編譯這種方式嗎?我可以檢查make/setup/configure結果。 – Jon 2011-05-08 04:10:41
不 - 當我在Ubuntu上爲i386編譯Python時,它自動決定它能夠加載共享對象。也許它會檢查'dlopen()'系統調用?是的,它看起來像它 - 我會更新我的答案。 – 2011-05-08 04:29:43
它在幾個地方檢查它。相關部分:http://pastebin.com/UQ2ZsteE。結果是失敗。這一定是問題,謝謝。我會研究如何解決這個問題,任何建議? FYI:我決定最近切換內核和相應的工具鏈,以前的工具鏈交叉編譯python沒有任何問題。 – Jon 2011-05-08 05:09:25