嵌入式Python在C ++中 - 滚动的numpy - 在哪里导入lib?

时间:2015-10-26 20:11:14

标签: python c++ numpy dllimport

我在Windows上使用/嵌入Python 3.4

我试图在现有的C ++应用程序中嵌入Python。我已经完成了这项工作,但我无法工作。

我通过来自http://www.lfd.uci.edu/~gohlke/pythonlibs/的whl文件安装了numpy一切都在python.exe中正常工作,但是当我做类似的事情时......

PyRun_SimpleString("import numpy\n");

...在C ++应用程序中,我得到一个回溯结束于:

\Python\lib\site-packages\numpy\core\__init__.py, line 6, in <module>
from . import multiarray
cannot import 'multiarray'

嗯,这对我来说很有意义。模块多阵列在... \ Python34 \ Lib \ site-packages \ numpy \ core \ multiarray.pyd我认为这些.pyd文件基本上是DLL,这意味着需要导入库。

例如,... \ Python34 \ lib包含pyd文件中包含的其他模块的导入库(我认为)。您必须链接到导入库。为了在C ++ \ Python中导入模块(例如通过PyRun_SimpleString(&#34; import _elementtree \ n&#34;);)

我想我需要一个用于numpy的导入库来链接我的C ++应用程序。如果从源头建立numpy弹出这些,有人知道吗?构建过程看起来很棘手,但也许它是这里唯一的选择。

此外,显然在构建Python时,它不能与尚未安装的模块的导入库链接。换句话说,我的python.exe没有链接到我正在寻找的这个神奇的导入库,但它仍然可以导入numpy,怎么样?我可以在我的应用程序中重新创建吗?

0 个答案:

没有答案