что это значит, что мои символы библиотеки stati c определены с адресом 0 - PullRequest
0 голосов
/ 08 мая 2020

Я пытаюсь разбить свою сборку на несколько c библиотек и связать их в одну общую библиотеку. Я теряю символы из окончательного файла .so. Я заметил одно странное поведение: символы в одной из библиотек stati c определяют набор символов с адресом 0. Согласно справочной странице nm, T означает, что символ определен и экспортирован. Что означает адрес 0, если символы определены?

0000000000000000 T _ZN16djinni_generated19NativeRendererStateC1Ev
0000000000000000 T _ZN16djinni_generated19NativeRendererStateC2Ev
0000000000000000 T _ZN16djinni_generated19NativeRendererStateD1Ev
0000000000000000 T _ZN16djinni_generated19NativeRendererStateD2Ev
0000000000000000 T _ZN16djinni_generated20NativePlatformObject5toCppEP7_JNIEnvP8_jobject
0000000000000000 T _ZN16djinni_generated20NativePlatformObject7fromCppEP7_JNIEnvRKNSt6__ndk110shared_ptrIN5ALYCE14PlatformObjectEEE
0000000000000000 T _ZN16djinni_generated20NativePlatformObjectC1Ev
0000000000000000 T _ZN16djinni_generated20NativePlatformObjectC2Ev
0000000000000000 T _ZN16djinni_generated20NativePlatformObjectD1Ev
0000000000000000 T _ZN16djinni_generated20NativePlatformObjectD2Ev
...