C++ 技术中心

   :: 首页 :: 联系 ::  :: 管理
  160 Posts :: 0 Stories :: 87 Comments :: 0 Trackbacks

公告

郑重声明:本BLOG所发表的原创文章,作者保留一切权利。必须经过作者本人同意后方可转载,并注名作者(天空)和出处(CppBlog.com)。作者Email:coder@luckcoder.com

留言簿(27)

搜索

  •  

最新随笔

最新评论

评论排行榜

 

环境配置

      (1)python的lib 以及头文件分别加到vc的include/lib directories中去。

         (2)写完编译后出现找不到python33_d.lib 错误,出现这个错误的原因是:python_d.lib是 库的调试后形式,当我们以debug模式编译工程时,python就用这个lib文件,但是这个文件是不可用 的。对于这点,最快的办法就是强制要求python在任何情况下都是用非调试版本,就可以了。

                  所以要做的是:

  • 修改python头文件pyconfig.h的配置,修改指向调试库文件的参数,由

  1. #   if defined(_DEBUG)  
  2. #    pragma comment(lib,"python33_d.lib")  
  3. #   elif defined(Py_LIMITED_API)  
  4. #    pragma comment(lib,"python3.lib")  
  5. #   else  
  6. #    pragma comment(lib,"python33.lib")  
  7. #   endif /* _DEBUG */  

修改为:
 
  1. #   if defined(_DEBUG)  
  2. #    pragma comment(lib,"python33.lib")  
  3. #   elif defined(Py_LIMITED_API)  
  4. #    pragma comment(lib,"python3.lib")  
  5. #   else  
  6. #    pragma comment(lib,"python33.lib")  
  7. #   endif /* _DEBUG */  

            (3)在Visual Studio中编译时必须注意,若Python为64bit而VS C++ Project Config里的platform是32bit,会报错:

         

  1. Error   1   error LNK2019: unresolved external symbol __imp__Py_Finalize referenced in function _main    
  2. Error   2   error LNK2019: unresolved external symbol __imp__PyEval_CallObjectWithKeywords referenced in function _main    
  3. Error   3   error LNK2019: unresolved external symbol __imp__PyObject_GetAttrString referenced in function _main    
  4. Error   4   error LNK2019: unresolved external symbol __imp__PyImport_ImportModule referenced in function _main    
  5. Error   5   error LNK2019: unresolved external symbol __imp__Py_Initialize referenced in function _main    
  6. Error   6   error LNK1120: 5 unresolved externals    

               注意修改自己的platform


posted on 2013-04-25 23:33 C++技术中心 阅读(5531) 评论(2)  编辑 收藏 引用 所属分类: 游戏开发

Feedback

# re: C++调用python配置及编译出现的问题 2013-05-03 17:07 岁月漫步
很好  回复  更多评论
  

# re: C++调用python配置及编译出现的问题[未登录] 2014-06-04 15:17 初学者
太感谢了 一直不知道后面为什么会报第二种错误!   回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理