2017-10-30 1 views
0

Linuxベースのカスタムデバイスのアプリケーションを開発しようとしています。私のビルド環境(Ubuntuの16.04は)GLIBC-2.23を使用し、他のすべてのアプリケーションは、このバージョンを使用しますが、新しいカスタムデバイスは、GLIBCの古いバージョンを使用していますので、私は私のビルド環境を変更することはできませんし、私は更新できないアプリケーションにGLIBC_2.16が見つかりません

/lib/libc.so.6: version `GLIBC_2.16' not found (required by /opt/myapp/lib/libcurl.so.4) 

を取得していますカスタムデバイスGLIBC。

だから、止まった。 多分私は新しいglibcのバージョンを私のアプリケーションに明示的にリンクすることができますが、どうすればいいのか分かりません。

私はすべてのアイデアを、次の試してみましたが、STIL同じ

/lib/ld-linux.so.3 --library-path /opt/myapp/lib/ <APP> 

答えて

0

私はのようないくつかの異なる方法で、ということ行うことができますあなたは必ず私のビルド環境

を変更することはできません:、

  1. 古いGLIBCを使用するように構成された仮想マシンをインストールします。 VMの内部でアプリケーションをコンパイルしてください
  2. 古いGLIBCとツールチェーンを使用してchroot環境を設定してください
  3. Linuxから古いGLIBCクロスコンパイラをビルドします。

は、多分私はちょうど私のアプリケーション

可能です

が、より複雑で新しいglibcのバージョンをリンクすることができます。詳細here

関連する問題