मैं Visual Studio 2012 C++/CLI साथ याक और लेक्स उपयोग कर रहा हूँ और नीचे के रूप मेंविज़ुअल स्टूडियो 2012 कस्टम बिल्ड चरण क्यों चल रहा है जब स्रोत फ़ाइल नहीं बदला गया है?
छवि में दिखाया गया आउटपुट फ़ाइल के लिए दो निर्भरता हैं याक स्रोत फ़ाइल के लिए एक कस्टम निर्माण कदम बनाया है । वे yacc स्रोत फ़ाइल icl5kyacc.y और yyparse.c टेम्पलेट फ़ाइल हैं। हर बार जब मैं समाधान का निर्माण करता हूं तो कस्टम बिल्ड चरण तब भी चलता है जब yyparse.c और icl5kyacc.y स्रोत फ़ाइलों को संशोधित नहीं किया गया है। निर्माण के बाद निर्देशिका सूची यहां दी गई है।
21-Sep-2012 10:19:18p 28,210 A icl5kyacc.y
17-Sep-2012 7:32:06p 9,042 A yyparse.c
22-Sep-2012 11:43:56a 38,233 A ICL5KYACC.cpp
22-Sep-2012 11:43:56a 2,160 A icl5kyacc.h
और फिर
2> से icl5kyacc.y
21-Sep-2012 10:19:18p 28,210 A icl5kyacc.y
17-Sep-2012 7:32:06p 9,042 A yyparse.c
22-Sep-2012 11:45:46a 38,233 A ICL5KYACC.cpp
22-Sep-2012 11:45:46a 2,160 A icl5kyacc.h
हूँ मैं विश्वास है कि एक कस्टम निर्माण कदम का उपयोग कर अपने आप मानक निर्भरता नियम लागू करना चाहिए में गलत निर्माण icl5kyacc.cpp जनरेट कर रहा है के बाद निर्माण चरण के इनपुट और आउटपुट फाइलों के बीच? एक बात जो मैं उत्सुक हूं, % (अतिरिक्त इनपुट) मैक्रो जो स्टूडियो अतिरिक्त निर्भरताओं के तहत मेरे लिए रखती है। यह सुनिश्चित नहीं है कि वह क्या है या यदि यह किसी भी तरह से उस फ़ाइल को इंगित करता है जिसे संशोधित किया जा रहा है।
**% (अतिरिक्त इनपुट) ** मैक्रो को हटाने से इस मुद्दे पर कोई प्रभाव नहीं पड़ा। – JonN