libcurl 共有ライブラリを使用する別の共有ライブラリ (libtheirstuff.so) に対して自分の共有ライブラリ (libmystuff.so) をクロスコンパイルしようとしていますが、次のエラーが発生します。
libmystuff.so: No symbol version section for versioned symbol
'curl_global_init@@CURL_OPENSSL_3'
その後、次のようになります。
final link failed: Nonrepresentable section on output.
libtheirstuff を作成するコードを調べると、curl_global_init が curl への最初の参照であることがわかります。
ターゲット プラットフォーム ( arm5 ldd libtheirstuff.so
) で実行すると、すべての参照を見つけることができることがわかります。
何が起きてる?
編集:gccへの呼び出しは次のとおりです
arm-none-linux-gnueabi-gcc -fPIC -c mystuff_impl.c -o mystuff_impl.o -I/home/me/arm/include
arm-none-linux-gnueabi-gcc -shared -Wl,soname=libmystuff.so -o libmystuff.so.0.1 mystuff_impl.o -L/home/me/arm/lib -ltheirstuff