Вопрос такой, я компилирую файл с помощью gcc, в результате в исполняемом ELF-файле есть записи вида "GCC: (GNU) 3.2.3 20030502 (Red Hat Linux 3.2.3-54)". Перебирал всевозможные опции, убирал всю отладочную информацию (ключ "-s"), всё равно остаются эти записи. Чем больше объектных файлов линкую, тем больше этих записей. Можно ли их прибить и для чего они? Спасиб :)
>Вопрос такой, я компилирую файл с помощью gcc, в результате в исполняемом
>ELF-файле есть записи вида "GCC: (GNU) 3.2.3 20030502 (Red Hat Linux
>3.2.3-54)". Перебирал всевозможные опции, убирал всю отладочную информацию (ключ "-s"), всё
>равно остаются эти записи. Чем больше объектных файлов линкую, тем больше
>этих записей. Можно ли их прибить и для чего они? Спасиб
>:)прибить - можно..
грызть доки по теме binutils,
в частности objcopy опция --remove-section
>>Вопрос такой, я компилирую файл с помощью gcc, в результате в исполняемом
>>ELF-файле есть записи вида "GCC: (GNU) 3.2.3 20030502 (Red Hat Linux
>>3.2.3-54)". Перебирал всевозможные опции, убирал всю отладочную информацию (ключ "-s"), всё
>>равно остаются эти записи. Чем больше объектных файлов линкую, тем больше
>>этих записей. Можно ли их прибить и для чего они? Спасиб
>>:)
>
>прибить - можно..
>грызть доки по теме binutils,
>в частности objcopy опция --remove-section
Спасибо большое. С помощью утилиты objdump вывел все секции. Эта называлась .comment. И с помощью objcopy прибил её. Теперь эльф чистенький.
>Спасибо большое. С помощью утилиты objdump вывел все секции. Эта называлась .comment.
>И с помощью objcopy прибил её. Теперь эльф чистенький.Чисто из любопытства - а зачем?
>Чисто из любопытства - а зачем?Место люди економят. Ибо жадные.
>Вопрос такой, я компилирую файл с помощью gcc, в результате в исполняемом
>ELF-файле есть записи вида "GCC: (GNU) 3.2.3 20030502 (Red Hat Linux
>3.2.3-54)". Перебирал всевозможные опции, убирал всю отладочную информацию (ключ "-s"), всё
>равно остаются эти записи. Чем больше объектных файлов линкую, тем больше
>этих записей. Можно ли их прибить и для чего они? Спасиб
>:)
прибить можно (например man objcopy на предмет -R .note, можно сказать ld что они не нужны)
содержат сведения о компиляторе (для информации) - системно не используется
>и для чего они?Иногда полезно знать, чем было откомпилировано.
Дело обстоит следующим образом: в проекте присутствует множественное наследование.
В производном классе есть фунции GetParam() и SetParam(). В коде написан вызов функции GetParam(), а на самом деле вызывается SetParam(). Я искал в гугле. Нашел те же вопросы, но не нашел ответов. А статической функцию сделать не могу! Кто подскажет?Проект на Mac OS. Версия GCC i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
>Дело обстоит следующим образом: в проекте присутствует множественное наследование.
>В производном классе есть фунции GetParam() и SetParam(). В коде написан вызов
>функции GetParam(), а на самом деле вызывается SetParam(). Я искал
>в гугле. Нашел те же вопросы, но не нашел ответов. А
>статической функцию сделать не могу! Кто подскажет?
>
>Проект на Mac OS. Версия GCC i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
Никогда такого не видел, а видел я много всякого разного.
Sample в студию, если можно.
>>Дело обстоит следующим образом: в проекте присутствует множественное наследование.
>>В производном классе есть фунции GetParam() и SetParam(). В коде написан вызов
>>функции GetParam(), а на самом деле вызывается SetParam(). Я искал
>>в гугле. Нашел те же вопросы, но не нашел ответов. А
>>статической функцию сделать не могу! Кто подскажет?
>>
>>Проект на Mac OS. Версия GCC i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
>
>
>Никогда такого не видел, а видел я много всякого разного.к примеру, когда объява класса с виртуальными методами попадает под pragma pack(1), вызываецца все че угодно)) для макоськи видимо как вариант съезжает указатель в vtable (которая хде находицца?..)
>Sample в студию, если можно.
+1