2011-04-28 106 views
1

已解決:事實證明,我在鏈接腳本中弄糟了路徑var在C++中使用擴展導入Python

我有關於在C++中執行嵌入式Python代碼的問題。我有一個C++程序,可以動態執行一個常規的Python文件:

... 
PyObject_CallObject(func, args); 
... 

當我在注入的python腳本中使用普通函數時,一切都按預期工作。但是,當我想導入的python腳本的一些擴展:

import "libraryname" 
... 

,我得到以下運行時錯誤:

ImportError: No module named "libraryname" ...

的Python代碼的工作原理使用常規的解釋,但不是那些它在C注射++ 。我已經嘗試在PATH變量和鏈接器中顯式加載python庫文件夾,但沒有任何成功。

(我使用Linux/Debian的)。

回答

4

進口在Python不使用周圍的名稱引號。

import libraryname 

此外,注入模塊插入sys.modules第一。