2011-01-20 4 views
5

के माध्यम से चल रहा है जीसीसी मैं एक ऐप्लिकेशन है जो एक दृश्य स्टूडियो 2010 समाधान पार्स करके जीसीसी का उपयोग कर इसे संकलित करने के लिए प्रयास करता है लेखन की है।दृश्य स्टूडियो

जैसा कि मैंने ऐप बनाया है, मैंने इसे मानक कंसोल विंडो में चलाया है और मुझे कोई समस्या नहीं है (बशर्ते आपने मेरी थोड़ी सी जीसीसी असंगतताओं को अनदेखा किया हो);)।

समस्या

आता है कि जब मैं दृश्य स्टूडियो के तहत इस आवेदन पर अमल यह ठीक ऊपर आग लेकिन जब यह spawns जीसीसी बच्चे यह रिपोर्ट संसाधित करता है:: साझा पुस्तकालयों लोड हो रहा है समय त्रुटि:

cc1plus.exe: नहीं कर सकते साझा ऑब्जेक्ट फ़ाइल खोलें: ऐसी कोई फ़ाइल या निर्देशिका

यह बहुत भ्रमित है क्योंकि यह एक स्टैंडअलोन कंसोल ऐप के रूप में ठीक काम करता है। तो क्या किसी को पता है कि क्या हो रहा है? यह क्या है "?" पुस्तकालय? यह कंसोल के तहत क्यों काम करता है लेकिन VStudio के माध्यम से नहीं?

मैं निर्माण एप्लिकेशन अंदर से मेरी पथ env var डंप और यह निश्चित रूप से मेरे cygwin/bin निर्देशिका भी शामिल है। क्या इसके तुरंत बाद खो जाता है? यदि मैं सिग्विन बैश खोल चलाता हूं तो/usr/bin पथ में है।

तो क्या देता है? क्या किसी के पास कोई विचार है?

+0

मेरे दो सेंट: यदि आपको विंडोज़ पर केवल जीसीसी (और कोई पॉज़िक्सनेस) की आवश्यकता नहीं है, तो यहां से उदाहरण के लिए: http://mingw-w64.sourceforge.net/ यह मूल जीसीसी है जो विंडोज पर चलता है (बिना, या यदि आप सिगविन के साथ चाहते हैं)। यदि आपके पास निश्चित रूप से आपके ऐप का एक आवश्यक हिस्सा नहीं है, तो आपके पास सिग्विन परत के बिना एक सरल सेटअप हो सकता है। – rubenvb

+0

@ रूबेनव: अलास यह साइगविन होना है :( – Goz

+0

फिर रोज़ुअर का जवाब है कि समस्या क्या है। इसे हल करने का तरीका दुर्भाग्यवश एक और मामला है। आपको यह सुनिश्चित करना होगा कि साइगविन पर्यावरण को सिगविन पर्यावरण से बुलाया जाए कैसे? मुझे लगता है कि उन्हें सिविगिन (बीए) sh.exe से कॉल करना काम करेगा, लेकिन अन्य/बेहतर तरीके हो सकते हैं। – rubenvb

उत्तर

5

मैं दृश्य स्टूडियो के साथ इस समस्या की कोशिश की है नहीं और मुझे यकीन है कि यह आपकी समस्या का हल है, तो नहीं कर रहा हूँ, लेकिन जब Emacs के साथ खिड़कियां में cygwin के जीसीसी के साथ एक कार्यक्रम संकलन करने की कोशिश कर ने वही समस्या का सामना करना पड़ा। Siince cygwin का gcc.exe निष्पादन योग्य नहीं है, लेकिन वास्तविक निष्पादन योग्य (जो कि आपने स्थापित किया है उसके आधार पर gcc-3.exe या gcc-4.exe है) के लिए सिम्लिंक का एक प्रकार है। बाश खोल में इन सिम्लिंक को आसानी से हल किया जाता है, cmd.exe में वे नहीं हैं।

+0

इसमें वास्तव में एक समस्या होने का एक बड़ा मौका है! – rubenvb

+0

cmd.ex से चलाते समय यह सिगविन के साथ एक सामान्य समस्या है ई। – Rozuur

+0

@Rozuur: चीयर्स यह मुद्दा प्रतीत होता है। क्या मुसीबत है। मुझे यकीन है कि बनाने के लिए कुछ और परीक्षण चलाने के लिए जा रहा हूँ, लेकिन मुझे लगता है आप मुझ से :) – Goz

3

भागो SysInternals ProcMon और देखते हैं कि फ़ाइलों को लोड करने के लिए असफल रहे हैं?

+0

अन्यथा, sysinternals निर्भर करता है .exe भी बहुत अच्छा उपयोग कर सकता है। – Benoit

+0

सच है, लेकिन यदि आप twiddling के साथ हैं पथ और जो भी अक्सर प्राप्त करना मुश्किल होता है, आपको यह दिखाने के लिए निर्भर करता है कि क्या गलत है और क्यों प्रोमॉन आपको सही पथ दिखाएगा और कौन सी फाइलें लोड होने में विफल रही हैं ... –

+2

जानकारी का बिंदु: depend.exe एक Sysinternals नहीं है उपकरण –