python37.dll在可执行文件中未链接
python37.dll not linked in executable
我用python扩展了c ++,但可执行文件不会在没有安装python的系统上运行。
#include "C:.....python.h"
int main()
{
Py_Initialize();
PyRun_SimpleString("print("hello world")n")
Py_Finalize();
return 0;
}
当我在未安装 python 的 Windows 系统上运行时,我收到以下错误:
The code execution cannot proceed because python37.dll was not found. Reinstalling the program may fix the problem.
如何将 python37.dll 链接到可执行文件。
确保你的python文件夹在你的PATH中,这样它才能找到有问题的DLL。
从命令行:
c:> set PATH=c:pythonpython37;%PATH%
c:> cd /d c:pathtoyourexe
c:pathtoyouexe> myprogram.exe
有关如何查找和加载 DLL 的更多详细信息,请阅读 MSDN 上的动态链接库搜索顺序页
根据定义,DLL 是一个动态链接的库,它是一个单独的模块,在运行时查找和解析。
如果未安装 Python,则应用程序将无法运行。
您需要将 Python 与您的应用程序捆绑在一起,或者在应用程序安装之前/期间安装 Python。
或者,您可以尝试静态链接 Python,在这种情况下,它将成为可执行文件的一部分,不需要单独安装。
相关文章:
- 如果包含映射的静态库与可执行文件和动态库链接,静态映射(变量)是否会被多次释放?
- 为什么C++可执行文件在与较新的libstdc++.so链接时运行得更快?
- 在链接可执行文件之前查找静态库未解析的依赖项
- python37.dll在可执行文件中未链接
- 调用函数一次用于动态链接库,一次从可执行文件调用函数
- 使用共享库编译可执行文件时仅链接所需的符号
- 使用 MINGW 和 CPLEX 库链接从 Linux 编译 Windows 可执行文件
- 不同的数学符号绑定与共享库与 dlopen 并直接链接到可执行文件 (Linux)
- 静态库中的符号有时会链接到可执行文件中,有时则不会
- CMake - 仅在需要时将库链接到可执行文件
- cusparse功能的多个定义错误在链接可执行文件中的cuda文件时
- G 无法将.O文件链接到可执行文件中
- 为什么 GNU ld 在链接可执行文件和共享对象时以不同的方式解析符号
- 为什么 Linux 上的动态链接可执行文件在其自己的内存空间中具有 libc 的完整内存空间
- Linaro工具链-ARM可执行文件
- c++链接器如何选择将类的哪个定义链接到可执行文件中
- 如何告诉CMake对库链接可执行文件
- 链接可执行到共享库(Android Studio 2.2)
- 用静态库的完整路径链接可执行文件
- 链接可执行文件中的共享库与另一个共享库