2009-09-06 11 views
11

में प्रोग्रामिंग जब Emacs में MX Flymake-मोड चलाने का प्रयास कर रहा है:Flymake कॉन्फ़िगरेशन त्रुटि है, जबकि सी

Flymake: Configuration error has occured while running (make -s -C ./CHK_SOURCES=helloworld_flymake.c SYNTAX_CHECK_MODE=1 check-syntax). Flymake will be switched OFF 

मैं एक बफर में कहा जाता helloworld.c आदेश लागू कर रहा हूँ:

#include <stdio.h> 

int main(void) { 
    printf("Hello World"); 
    return 0; 
} 

helloworld: helloworld.c 
gcc helloworld.c -o helloworld 

मैं जीएनयू Emacs 23.0.91.1 चल रहा हूँ उबंटू 9.04 के तहत: और एक फाइल एक ही निर्देशिका में Makefile कहा जाता है।

अग्रिम धन्यवाद!

उत्तर

1

क्या यह आपके मेकफ़ाइल की वास्तविक सामग्री है? ऐसा लगता है कि दूसरी पंक्ति से पहले एक जगह है। यह एक टैब माना जाता है:

helloworld: helloworld.c 
gcc helloworld.c -o helloworld 

अधिक इस तरह:

helloworld: helloworld.c 
    gcc helloworld.c -o helloworld 

ध्यान में रखते हुए, कि इतने संपादक रिक्त स्थान के लिए अपने टैब वर्ण परिवर्तित है लगता है, ऐसा नहीं है कि ।

helloworld: helloworld.c 
<press tab here>gcc helloworld.c -o helloworld 
+0

हां, मैं एक टैब का उपयोग कर रहा हूं, एक जगह नहीं। जब मैं खोल पर "मेक" टाइप करता हूं तो यह ठीक से संकलित करता है। –

19

Makefile' must contain the चेक-वाक्य रचना 'लक्ष्य। इसे मेकफ़ाइल में जोड़ें:

check-syntax: 
    gcc -o nul -S ${CHK_SOURCES} 

सुनिश्चित करें कि आप दूसरी पंक्ति शुरू करने के लिए एक टैब का उपयोग करें। इसके अलावा फ्लाईमेक के साथ एक बग है जो आपको मेकफ़ाइल को राजधानी एम के साथ नामित करने के लिए बनाता है। यदि आप कहते हैं, तो यह काम नहीं करेगा, इसे "मेकफ़ाइल" कहें। इसके लिए देखो!

+0

इस विधि के साथ समस्या यह है कि जीसीसी इसे तब तक काम करने की अनुमति नहीं देगी जब एक फ़ाइल अधिक हो। वैसे भी इस के आसपास पाने के लिए? gcc: घातक त्रुटि: कई फ़ाइलों के साथ -c, -S या -E के साथ-साथ निर्दिष्ट नहीं कर सकता संकलन समाप्त हो गया। – Silverdev

+0

एक पंक्ति: 'चेक-सिंटैक्स :; g ++ -o nul -S $ {CHK_SOURCES} --std = C++ 14; आरएम नूल ' – pank

संबंधित मुद्दे