URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7568
[ Назад ]

Исходное сообщение
"не могу скомпилировать С++ под fedora 8 "

Отправлено Kane , 28-Авг-08 20:24 
привет всем!! помогите разобраться
не могу скомпилировать простую С++ программу

вот makefile:

OBJ = class.o
EXE = class
SOURCE = class.cpp

$(EXE): $(OBJ)
    gcc $(OBJ) -o $(EXE)

$(OBJ): $(SOURCE)
    gcc -c $(SOURCE)

вот программа собственно
class A
{
private:
int i;

public:
int seti(int a){i=a;}

private:
int c;

};

int  main()
{
A *p;
p = new A;
}

а вот ругань компилятора
gcc -c class.cpp
gcc -lpthread class.o -o class
class.o: In function `main':
class.cpp:(.text+0x19): undefined reference to `operator new(unsigned int)'
class.o:(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: выполнение ld завершилось с кодом возврата 1
make: *** [class] Ошибка 1


ругается линкер ..... собственно компиляция С++ кода проходит

я так полагаю что в makefile какие то библиотеки надо подключить
только вот какие не пойму....

помогите советом
заранее спасибо!


Содержание

Сообщения в этом обсуждении
"не могу скомпилировать С++ под fedora 8 "
Отправлено angra , 28-Авг-08 21:56 
а зачем для этой простенькой программы вы пытаетесь подключить libpthread?

"не могу скомпилировать С++ под fedora 8 "
Отправлено Kane , 28-Авг-08 21:58 
>а зачем для этой простенькой программы вы пытаетесь подключить libpthread?

да libpthread тут не нужен...
просто makefile делался из другого makefile для другой простой программы где потоки использовались и там libthread был нужен ...

я протсо пропустил что libpthread тут остался...


"не могу скомпилировать С++ под fedora 8 "
Отправлено Аноним , 29-Авг-08 01:50 
Это аццкий баянище ))

gcc  -  это не компилятор (и особенно не редактор связей) c++

попробуй заменить gcc на с++ ))


"не могу скомпилировать С++ под fedora 8 "
Отправлено dd , 29-Авг-08 09:51 
>Это аццкий баянище ))
>
>gcc  -  это не компилятор (и особенно не редактор связей)
>c++
>
>попробуй заменить gcc на с++ ))

наверно всеже на g++ )


"не могу скомпилировать С++ под fedora 8 "
Отправлено Kane , 29-Авг-08 21:53 
>Это аццкий баянище ))
>
>gcc  -  это не компилятор (и особенно не редактор связей)
>c++
>
>попробуй заменить gcc на с++ ))

ну кстати с gcc то С код компилировался....
я так понял что он сам потом по ключам вызывает компилятор и линкер, ну также как сс
я просто ключи эти так и не нашел

с++ заработало


"не могу скомпилировать С++ под fedora 8 "
Отправлено Аноним , 29-Авг-08 22:29 
>ну кстати с gcc то С код компилировался....

Он вообще умный, и на расширение смотрит.

А вот с обьектными файлами такой фокус не прокатил, они у c++ и "с" одинаковые.
В результате не нашлись стандартные библиотеки чуждого языка :)

>с++ заработало

прелестно :)