Я создаю RPM, а при создании я нашел следующую команду для создания одного общего объекта RPM.
g++ /*some compiler options*/ -O1 -Wl,--version-script abc.map -L<some paths> and the remaining command.
Я не понял, в чем заключается использование опции "--version-script" и "abc.map" в команде. Что оно делает? Follwoing - это содержимое файла "abc.map".
URE_1{
global:
_ZTI*; _ZTS*; # weak RTTI symbols for C++ exceptions
/*some method names explicitly*/
local:
*;
}
Я думаю, что это связано с предоставлением символов в файле "shared object", но я не уверен.
Я думаю, что это связано с предоставлением символов в файле "shared object", но я не уверен.
Ты прав.
См. 3.9 Команда VERSION:
Компилятор поддерживает версии символов при использовании ELF. Варианты символов полезны только при использовании разделяемых библиотек. Динамический компоновщик может использовать версии символов для выбора конкретной версии функции при запуске программы, которая могла быть связана с более ранней версией разделяемой библиотеки.
expat
1.x.