How to set the environment in which python snippet can run in c++ program? -


मैंने दो फ़ाइलों को embed.py का उपयोग करें embedm.cpp बना दिया है मेरी होम डाइरेक्टरी।

embed.py

  आयात ओएस प्रिंट os.getcwd ()   

उपयोगएम्बीड सीपीपी <पूर्व> #include & lt; iostream & gt; #include "Python.h" नामस्थान std का उपयोग कर; Int main () {Py_Initialize (); PyRun_SimpleFile ( "embed.py"); Py_Finalize (); वापसी 0; }

कमांड जी ++ उपयोग एंबेडेड सीपीपी -ओ उपयोग एंबेड रिटर्न पायथन एच नहीं मिला , मुझे क्या करने के लिए अगला कदम क्या करना चाहिए < कोड>। सीपीपी फ़ाइल सफलतापूर्वक संकलित हुई और सही उत्तर वापस लौटाया?

UPDATE : दाऊद और अलेक्जेंडर से युक्तियों के लिए धन्यवाद। यह परीक्षण ठीक करने के लिए पर्यावरण कैसे सेट करें, इसके बारे में सुझावों के लिए धन्यवाद। मेरे Fedora लिनक्स में पैकेज अजगर-डेवल को स्थापित करने के बाद समस्या का समाधान किया गया है।

लिनक्स पर, आप संकलक झंडे (अजगर-कॉन्फ़िग - cflags) और लिंकर झंडे (पायथन-कॉन्फिग --ldflags) प्राप्त करने के लिए python-config का उपयोग कर सकते हैं।

उदाहरण के लिए:

# & gt; अजगर-कॉन्फ़िग - सीफलाग्स- I / usr / include / python2.5 -i / usr / include / python2.5 -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall- वर्टि-प्रोटोटाइप < / कोड>

# & gt; Python-config -ldflags -l / usr / lib / python2.5 / config -lpthread -ldl -lutil -lm -lpython2.5

अपने प्रोग्राम को संकलित करने के लिए आप कर सकते हैं चलाएँ जी ++ उपयोग एंबेडेड सीपीपी- "सीएफएलएजी" "एलडीएफएलएग" एम्बेड करें:

# & gt; जी ++ उपयोग एंबेडेड सीपीपी- ए एम्बेड -आई / यूएसआर / शामिल / पयथोन -2.5 -आई / यूएसआर / शामिल / पायथन 2 -फनो-सख्त-एलियासिंग -डीएनडीईयूयूयूजी -जी-एफडब्ल्यूआरपी-ओ 2 -Wall -Wstrict-प्रोटोटाइप-एल / Usr / lib / python2.5 / config -lpthread -ldl -lutil -lm -lpython2.5

मुझे थोड़ी सी useEmbed.cpp प्रयोग करना पड़ा:

  #include "Python.h" # शामिल है & lt; iostream & gt; नेमस्पेस एसटीडी का उपयोग करना; Int main () {Py_Initialize (); FILE * file = fopen ("embed.py", "r +"); PyRun_SimpleFile (फ़ाइल, "embed.py"); Py_Finalize (); fclose (फ़ाइल); वापसी 0; }    

Comments

Popular posts from this blog

qt - switch/case statement in C++ with a QString type -

python - sqlite3.OperationalError: near "REFERENCES": syntax error - foreign key creating -

Python's equivalent for Ruby's define_method? -