pyspotifyコンパイルldエラー

pyspotifyコンパイルldエラー

私はVMをインストールでき、arm64ベースのmopidy-spotifyをfreebox deltaにインストールしようとしています。
多くの問題の後、私はほとんどの依存関係を動作させ、ほとんどのエラーを取り除きました。
しかし、pyspotifyをコンパイルしようとすると、まだlibspotifyのために問題が発生しています。次のソースを使用して、私のシステムでlibspotifyを正常にコンパイルしました。そのリンク しかし、私はいつも

ログ出力は次のとおりです。

Obtaining file:///home/jc/pyspotify
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
    Preparing wheel metadata ... done
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from pyspotify==2.1.3) (45.2.0)
Requirement already satisfied: cffi>=1.0.0 in /usr/local/lib/python3.8/dist-packages (from pyspotify==2.1.3) (1.14.0)
Requirement already satisfied: pycparser in /usr/local/lib/python3.8/dist-packages (from cffi>=1.0.0->pyspotify==2.1.3) (2.20)
Installing collected packages: pyspotify
  Running setup.py develop for pyspotify
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/jc/pyspotify/setup.py'"'"'; __file__='"'"'/home/jc/pyspotify/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps
         cwd: /home/jc/pyspotify/
    Complete output (22 lines):
    running develop
    running egg_info
    writing pyspotify.egg-info/PKG-INFO
    writing dependency_links to pyspotify.egg-info/dependency_links.txt
    writing requirements to pyspotify.egg-info/requires.txt
    writing top-level names to pyspotify.egg-info/top_level.txt
    reading manifest file 'pyspotify.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    no previously-included directories found matching 'docs/_build'
    no previously-included directories found matching 'examples/tmp'
    warning: no previously-included files matching '__pycache__/*' found anywhere in distribution
    writing manifest file 'pyspotify.egg-info/SOURCES.txt'
    running build_ext
    generating cffi module 'build/temp.linux-aarch64-3.8/spotify._spotify.c'
    already up-to-date
    building 'spotify._spotify' extension
    aarch64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.8 -c build/temp.linux-aarch64-3.8/spotify._spotify.c -o build/temp.linux-aarch64-3.8/build/temp.linux-aarch64-3.8/spotify._spotify.o
    aarch64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-3.8/build/temp.linux-aarch64-3.8/spotify._spotify.o -lspotify -o build/lib.linux-aarch64-3.8/spotify/_spotify.abi3.so
    /usr/bin/ld: skipping incompatible /usr/local/lib/libspotify.so when searching for -lspotify
    /usr/bin/ld: cannot find -lspotify
    collect2: error: ld returned 1 exit status
    error: command 'aarch64-linux-gnu-gcc' failed with exit status 1


より多くの情報や手がかりがあれば、いつでもお問い合わせください。

ベストアンサー1

32ビットライブラリと64ビットライブラリを混在させようとする可能性が高いです。 32ビットアプリケーションは32ビットライブラリに接続する必要があり、64ビットアプリケーションは64ビットライブラリに接続する必要があります。

file /usr/local/lib/libspotify.so以下を実行して、ライブラリが32ビットまたは64ビット用にコンパイルされていることを確認できます。

次の環境変数を設定して、64ビットシステムで実行されているGCCに32ビットコードをコンパイルするように指示できます。

CFLAGS=-m32 CXXFLAGS=-m32 make

また見てください/usr/bin/ld: foo を検索するときに互換性のない foo.so をスキップします。

おすすめ記事