MY_LIB.so ファイルの終了から lib_share.so ファイルをビルドしようとしています。MY_LIB.so ファイルは my_path にあります。
g++ -shared -o lib_share.so -L/my_path -lMYLIB
実行すると、fallowsとしてエラーが発生します
bin/ld: skipping incompatible /home/folder/lMY_LIB.so
-lMY_LIB を検索する場合
/home/../../bin/ld: cannot find -lMY_LIB
PS:MY_LIB.so はソフトリンクです
main .so ファイルに移動し、main .so で MY_LIB を検索すると、次のようになります。
objdump -p MY_LIB.so.1.0.1 | grep
MY_LIB.so.1.0.1: file format **elf32-big**
SONAME MY_LIB.so.1
ライブラリのファイル形式は 32 ビットで、64 ビット マシンを使用してコンパイルしています (g++ -shared -o lib_share.so -L/my_path -lMYLIB)
MY_LIB が物理的にディレクトリに存在するにもかかわらず、コンパイルできない理由を理解するのに役立つ人はいますか (g++ -shared -o lib_share.so -L/my_path -lMYLIB)
私のグーグル検索によると、ライブラリが32ビットであり、64ビットマシンを使用してプログラムをコンパイルしているためです。
他のエラーの可能性と、このエラーを解決する方法を教えてください。