[Comm] Re: gcc начал требовать personality
Oleg N. Kayunov
=?iso-8859-1?q?okayunov_=CE=C1_mtu-net=2Eru?=
Пт Июл 4 14:01:51 MSD 2003
Alexey Voinov пишет:
>Oleg N. Kayunov wrote
>
>
>>>> Вздумал перетранслировать программки на C, кои вполне нормально
>>>>транслировались ещё в начале сего года (до установкиMaster 2.2).
>>>> Вдруг на НЕКОТОРЫХ (что совсем озадачивает) C-шных файлах начал
>>>>получать сообщения вида:
>>>>======================================
>>>>Accerman.o(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
>>>> либо:
>>>>info.o(.gnu.linkonce.d.DW.ref.__gxx_personality_v0+0x0): undefined
>>>>reference to `__gxx_personality_v0'
>>>>======================================
>>>>
>>>>
>>>Может Вы используете g++ для компиляции этих программ?
>>>
>>>
>>>
>> Фактически я думаю - да.
>>Учитывая расширения и принимаемую транслятором форму комментариев.
>>
>>
>Судя по приведённому СС --- нет. :)
>Комметариии вида // в C --- gcc'изм и не является признаком C++
>
Ладно... Надо же...
А расширение (cpp)?
У меня. всякий раз когда я их (*.cpp) использовал одновременно с
файлами поименованными как *.c начинались вопли насчёт нестыкуемости
имён - т.е. *.cpp явно транслировались в C++ манере.
Бывало это, правда, до переустановки системы - ALM2.2. Может тут
что-то и изменилось, не знаю.
>
>
>>>__gxx_personality это вообще-то атрибут C++.
>>>Если будет больше исходной информации (например исходник проблемной
>>>программы),
>>>то можно будет сказать больше.
>>>
>>>
>> Не хотелось грузить рассылку, но что поделаешь...
>>Программка (та, что Accerman, ну сугубо игрушечная, зато полная - с main):
>>
>>
>
><skip>
>
>
>>В Makefile установлены:
>>CC=gcc
>>CFLAGS := -pipe -c -O3 -MD
>>LDFLAGS := -pipe
>>
>>
>У меня скомпилировалось и запустилось без сообщений.
>
Именно с gcc?? (См. ниже)
>$ gcc --version | grep GCC
>i586-alt-linux-gcc (GCC) 3.2.3 (ALT Linux, build 3.2.3-alt1)
>
>
Откель дровишки-то? Не из Сизифа, часом?
Я-то всё ставил из дистрибутива и у меня:
$ gcc --version | grep GCC
gcc (GCC) 3.2.1 (ALT Linux, build 3.2.1-alt2)
Есть разница...
НО!
Поставив CC := g++ я без проблем оттранслировал и Accerman-а и пакет
включающий info.cpp!
Однако!
Шаманизм на марше, понимаешь.... (См. выше)
--
== В действительности все обстоит совершенно иначе чем на самом деле. ==
BR, Oleg N. Kayunov.
Подробная информация о списке рассылки community