arm用のopenSSHをクロスコンパイルできません。 zlibはありません。

arm用のopenSSHをクロスコンパイルできません。 zlibはありません。

ARM用のopenSSHをクロスコンパイルしようとしても成功しなかったようです。

私の設定パラメータは次のとおりです。

./configure --host=arm CC=arm-hisiv400-linux-g++ --prefix=/home/aa/Hi3536_SDK_V2.0.4.0/openSSH --with-zlib=/usr/include

checking zlib.h presence... yes
configure: WARNING: zlib.h: present but cannot be compiled
configure: WARNING: zlib.h:     check for missing prerequisite headers?
configure: WARNING: zlib.h: see the Autoconf documentation
configure: WARNING: zlib.h:     section "Present But Cannot Be Compiled"
configure: WARNING: zlib.h: proceeding with the compiler's result
configure: WARNING:     ## ------------------------------------------- ##
configure: WARNING:     ## Report this to [email protected] ##
configure: WARNING:     ## ------------------------------------------- ##
checking for zlib.h... no
configure: error: *** zlib.h missing - please install first or check config.log ***

zlib.hが存在するのにコンパイルできない理由を誰が教えてもらえますか?

ベストアンサー1

zlib開発ファイルをインストールしてこの問題を解決しました。

# Debian-based
sudo apt install libz-dev

# Fedora-based
sudo dnf install zlib-devel

これは、最後に発生したエラーに関連しています。

configure: error: *** zlib.h missing - please install first or check config.log ***

受信した警告もこれで解決できます。ただし、すでにインストールしている場合は、再インストールまたは更新してみることができます。

  • ボーナス:システムで必要な開発共有ライブラリを見つける1つの方法は、どのパッケージが特定のファイルを提供しているかをパッケージマネージャに問い合わせることです。たとえば、dnf providesFedoraは次のような状況で役立つ可能性があります。

    $ sudo dnf provides /usr/include/zlib.h
    ...
    
    zlib-devel-1.2.11-30.fc35.x86_64 : Header files and libraries for Zlib development
    Repo        : @System
    Matched from:
    Filename    : /usr/include/zlib.h
    
    ...
    

解決策が見つかりましたありがとうこの回答

おすすめ記事