混合编程杂谈续——发布

  上一篇简单的描述了一下混合编程中C++与python混合编程的操作,基本环节的搭建应该是没有什么问题了,这一篇说一下C++与python混合编程的发布问题,因为我们不能让客户和我们一样去了解程序的实现原理,他们要的只是一个结果,可以正常运行的程序,并不关心你的实现方式。因此我们要提供一个安装包,不依赖具体环境的可执行的程序。

  在上一篇中我们实现了可以调用python脚本的环境,但是它的运行强烈的依赖环境,所以今天我们就要解决这个问题,将程序发布到其他别的机器上时不受限制。

  今天在网上看了好多例子,了解到两种比较常用的将python脚本直接转化为exe的方法:

    1、py2exe  (http://www.py2exe.org)

    2、cx_freeze(http://cx-freeze.sourceforge.net)

  当然也可以搜索其他的使用方式,只不过我喜欢直接去官网溜达。

  

  废话说了那么多了我们进入正题吧,参考的(http://m.blog.csdn.net/blog/cay22/42076253)打包python环境,

  一、 在已安装的Python环境下, 有两个目录, 我的是C:Python27Dlls和C:Python27Lib, 把这两个目录下的文件拷贝到Release形成如图所示的目录结构    

  

  

  二、python27.dll的生成, 你可以自己编译python的C++代码得到, 也可以使用py2exe打包来生成。

  执行可执行文件运行和调试运行的结果一样。

  

  当然大家也可以参考这个前辈的做法试验一下,网址是:http://blog.csdn.net/zdw12242/article/details/8491251,记录了C++调用python脚本和制作可执行文件的全过程。

  当然方法很多适合自己的才是最好的,感谢大家的支持多多交流,回复不一定及时哦!!!

原文地址:https://www.cnblogs.com/stlong/p/4783918.html