Я скомпилировал библиотеку C++ под Linux/Mac со скрытыми символами. Я использовал _атрибут_ ((visibility("hidden"))) для всех своих классов и скомпилировал с параметрами (-c -O2 -fPIC -MMD -MP -МФ). Под Mac, используя MacDependencies (http://code.google.com/p/macdependency/), работа выполняется просто отлично, поскольку я вижу только свои экспорты (на самом деле я видел разницу до и после).
Однако я заметил, что при использовании nm я все равно вижу все названия символов. Это происходит как под Mac, так и под Linux.
Это почему? Есть ли способ избежать этого?
С уважением и благодарностью, Джо
nm -D
для отображения динамической таблицы символов? Видимость применяется только к динамической таблице символов. - person mark4o   schedule 14.02.2011