package/ply: needs dynamic library
ply builds and installs a library. Some objects that go in that library are tagged with a 'section' attribute (excerpt): __attribute__((section("providers"))) Later on, it references the bounds of that section, with the canonical __start and __stop markers, which will eventually be created by the linker: extern struct provider __start_providers; extern struct provider __stop_providers; Sections only exists in an ELF file, and a static library id not an ELF. So, when creating a static library, the markers are not created. Thus, when linking the final executable, the link fails because of missing symbols: .../powerpc-buildroot-linux-uclibc/bin/ld: ../libply/.libs/libply.a(libply_la-provider.o): in function `provider_get': provider.c:(.text+0xe): undefined reference to `__start_providers' .../powerpc-buildroot-linux-uclibc/bin/ld: provider.c:(.text+0x12): undefined reference to `__stop_providers' .../powerpc-buildroot-linux-uclibc/bin/ld: provider.c:(.text+0x2a): undefined reference to `__start_providers' .../powerpc-buildroot-linux-uclibc/bin/ld: provider.c:(.text+0x32): undefined reference to `__stop_providers' So, conceptually, ply can not build in static-only. Fixes: - http://autobuild.buildroot.net/results/3a586241d37614b644ff6c4674ae28df2b22fdf8 Signed-off-by:Andreas Klinger <ak@it-klinger.de> Signed-off-by:
Yann E. MORIN <yann.morin.1998@free.fr>
Loading
Please register or sign in to comment