Mam zewnętrzny plik .cpp. Jest to mieszanka kodu zgodnego z C i trochę C++. Kod C++ jest tylko opakowaniem wokół C, aby skorzystać z funkcji C++.Wymuszanie gcc do kompilowania pliku .cpp jako C
Używa makr, aby chronić kod C++, co jest świetne. Niestety, jeśli próbuję skompilować używając gcc, traktuje to jako C++ z powodu zakończenia pliku. Jestem świadomy różnic między gcc i g ++ - nie chcę kompilować jako C++.
Czy jest jakiś sposób zmusić gcc do traktowania tego pliku jako pliku C? Próbowałem użyć np. --std=c99
, ale to poprawnie powoduje błąd, że C99 nie jest poprawne dla C++.
Zmiana nazwy pliku na .c działa, ale chciałbym tego uniknąć, jeśli jest to możliwe, ponieważ jest dostarczany z zewnątrz i byłoby miło, gdyby pozostał jako nienaruszona kopia.
Dzięki!
Czasami, gdy widzę pytania SO. Chcę tylko krzyczeć na duży RTFM !! 'man gcc'. Dla tego króla pytań zajmuje to naprawdę mniej czasu niż napisanie pytania. – log0
Miałem ten sam problem, ponieważ chciałem skompilować czysty kod C w pliku .cpp ... oczywiście jestem całkiem początkującym programistą dotyczącym C. RTFM! nie jest wtedy tak dobrą radą. Strony man gcc to 11.000 linii i trudno znaleźć tam rozwiązanie, jeśli nie wiesz, czego szukać. – mort