V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
chinuno
V2EX  ›  Python

关于 Python 嵌入 C++的运行环境问题

  •  
  •   chinuno · 2016-02-26 08:40:22 +08:00 · 2804 次点击
    这是一个创建于 3193 天前的主题,其中的信息可能已经有所发展或是发生改变。
    运行在 Windows 上的程序用的 Python 嵌入 c++混合编程,然后运行的时候需要 Python 运行环境。自己的 Python 目录还装了其他库所以体积特别大不适合整个 Python 目录拷贝到程序目录下,有什么办法可以只挑选出有用到的模块文件么?
    5 条回复    2016-02-27 19:07:08 +08:00
    Karblue
        1
    Karblue  
       2016-02-26 18:11:09 +08:00
    py2exe 可以把需要的库打出来
    eote
        2
    eote  
       2016-02-26 18:29:56 +08:00
    virtualenv 搜下这个 python 库
    chinuno
        3
    chinuno  
    OP
       2016-02-27 09:36:19 +08:00
    @Karblue py2exe 是把脚本打包编译成可执行文件,我是要嵌入 c++运行的,脚本不是程序入口。
    @eote virtualenv 出来的是没有第三方模块的环境,还是有一大堆不需要的自带文件。另外 Windows 上的第三方模块大多是要 exe 安装的,我程序中用到 PIL 这些东西,还是安装在 Python 目录,无法分辨哪些需要哪些不需要
    Karblue
        4
    Karblue  
       2016-02-27 10:50:47 +08:00
    @chinuno py2exe 可以把需要的库提取出来的啊.你不要那个 exe 就是.看提取出来了哪些库就好了啊
    chinuno
        5
    chinuno  
    OP
       2016-02-27 19:07:08 +08:00
    @Karblue 刚才试了 py2exe ,提取出来的不完整,程序无法正常运行。后来看了这个方法 http://blog.csdn.net/you_lan_hai/article/details/7930866 。提取出来的文件可以正常运行。
    对比了一下两边的文件, py2exe 的要多一些,而比脚本提取的少了三个 pyc ,都是跟系统相关的。
    尝试把这三个添加到 py2exe 提取的文件中发现可以正常运行了,可能是 py2exe 在可执行文件中进行相关操作,看来筛选模块用 py2exe 还是不太合适。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1088 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:32 · PVG 07:32 · LAX 15:32 · JFK 18:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.