Автор Тема: C++ и gcc?!?!?!  (Прочетена 5364 пъти)

nocture

  • Напреднали
  • *****
  • Публикации: 133
    • Профил
C++ и gcc?!?!?!
« Отговор #15 -: Dec 06, 2004, 12:36 »
Добре защо когато файлът е .cpp ми дава грещка :
Примерен код
/tmp/ccNxEXBl.o(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status

А като е с .c всичко е ОК
Активен

Best regards,
Viktor Tomov
gentoosys 2.6.15-gentoo-r1

rpetrov

  • Напреднали
  • *****
  • Публикации: 571
    • Профил
    • WWW
C++ и gcc?!?!?!
« Отговор #16 -: Dec 06, 2004, 19:29 »
Цитат (nocture @ Дек. 06 2004,12:36)
Добре защо когато файлът е .cpp ми дава грещка :
Примерен код
/tmp/ccNxEXBl.o(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status

А като е с .c всичко е ОК

Когато методите са "C" се генерират едни имена на фунции и съответен код за извикването им.
Когато методите са на "C++" се генерират други имена.

примери:

1.) extern "C" void test_c(void);
2.) extern "C++" void test_cpp(void);
Активен

rpetrov

  • Напреднали
  • *****
  • Публикации: 571
    • Профил
    • WWW
C++ и gcc?!?!?!
« Отговор #17 -: Dec 06, 2004, 19:41 »
П.П. и затова header файловете съдържат:
Примерен код

........

ЗА СЪЖАЛЕНИЕ ИНТЕРФЕЙСА НА Ikonboard Е ОГРАНИЧЕН И НЕ ПРИЕМА КОДА НА "C++".
Ще трябва сам да го откриеш.
Активен

plamen_t

  • Напреднали
  • *****
  • Публикации: 170
    • Профил
C++ и gcc?!?!?!
« Отговор #18 -: Dec 06, 2004, 21:53 »
gcc -o file file.c (или gcc file.c -o file) е едно и също и ти генерира изпълним файл с име file. Само че gcc e C компилатор, а не C++. За да компилираш програма на С++ използвай компилатора за С++ , а именно g++  '<img'>
T.e програмата се компилира по същият начин като със gcc: g++ -o file file.cpp или g++ file.cpp -o file
g++ върви заедно с gcc, така че е почти невъзможно да го нямаш при положение , че имаш gcc '<img'>
Ай успех   '<img'>
Активен

BanishMemory

  • Напреднали
  • *****
  • Публикации: 24
    • Профил
C++ и gcc?!?!?!
« Отговор #19 -: Dec 16, 2004, 14:36 »
Абе хора. Изчетох 2 дебели книги за С/С++ и никъде не пишеше да има "методи". Хедърни (заглавни) файлове - да, библиотеки - да, класове - да... но тези метоси от къде ги измъкнахте не разбрах:
Цитат
Когато методите са "C" се генерират едни имена на фунции и съответен код за извикването им.
Когато методите са на "C++" се генерират други имена.

 '<img'> Мислех, че само Java има методи.
Активен

"Софтуерът е като чукането: най-добре е, когато е безплатно." - Линус Торвалдс

rpetrov

  • Напреднали
  • *****
  • Публикации: 571
    • Профил
    • WWW
C++ и gcc?!?!?!
« Отговор #20 -: Dec 16, 2004, 15:23 »
Цитат (BanishMemory @ Дек. 16 2004,14:36)
но тези методи от къде ги измъкнахте

s/методи/функции/g ;-)
Активен

Филип Бонев

  • Напреднали
  • *****
  • Публикации: 517
  • Distribution: Debian
  • Window Manager: KDE
    • Профил
C++ и gcc?!?!?!
« Отговор #21 -: Dec 16, 2004, 17:20 »
Цитат (rpetrov @ Дек. 16 2004,15:23)
Цитат (BanishMemory @ Дек. 16 2004,14:36)
но тези методи от къде ги измъкнахте

s/методи/функции/g ;-)

Много добре казано '<img'>
Супер отговор '<img'>
Активен

Поздрави,
Филип Бонев