python3.5 - c++調用python36
問題描述
首先需要配置環境,創建win32控制臺程序,然后對工程進行配置。 項目–>屬性–>vc++目錄–>包含目錄 添加python安裝目錄中include目錄 項目–>屬性–>vc++目錄–>庫目錄 添加python安裝目錄中libs目錄 鏈接器–>輸入–>附加依賴項 添加python36.lib
注意,如果C++工程采用debug版本,需要將將 python安裝目錄里libs文件夾下的python36.lib文件復制,并將名字改成 python36_d.lib
按上述步驟運行代碼,報錯,一大堆無法解析符號
百度后找到解決方案:
修改 pyconfig.h
#ifdef _DEBUG # define Py_DEBUG #endif 改為#ifdef _DEBUG //# define Py_DEBUG #endif
# ifdef _DEBUG # pragma comment(lib,'python27_d.lib') # else # pragma comment(lib,'python27.lib') # endif /* _DEBUG */ 改為# ifdef _DEBUG # pragma comment(lib,'python27.lib') # else # pragma comment(lib,'python27.lib') # endif /* _DEBUG */
修改object.h
#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS) #define Py_TRACE_REFS #endif 改為#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS) // #define Py_TRACE_REFS #endif
運行后依舊報相同的錯,我沒辦法了,求大神。
問題解答
回答1:還是用py2吧,py2可以用,py3的上述問問題我還是沒有解決
相關文章:
1. python - 能通過CAN控制一部普通的家用轎車嗎?2. 人工智能 - python 機器學習 醫療數據 怎么學3. python - beautifulsoup獲取網頁內容的問題4. c++ - 請問MySQL_Connection::isReadOnly 怎么解決?5. html5 - 只用CSS如何實現input框的寬度隨框里輸入的內容長短自動適應?6. mysql優化 - 關于mysql分區7. centos7 編譯安裝 Python 3.5.1 失敗8. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處9. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?10. python - Django內使用filter過濾時間,只認年份不認月份是怎么回事?
