0

Ubuntu(raring)にchrootした後、Chrome OSでglibc 2.17をビルドしました。glibc には、--with-headers抽出された Chrome OS カーネル ヘッダーに指定された configure パラメータがありました。

次に、を使用して結果を Chrome OS の/usr/localディレクトリにインストールしましたDESTDIR。また、既存の glibc と競合するファイルを削除し、現在のファイルを新しいディレクトリにシンボリック リンクしました/usr/local/。i686 カーネルで動作しましたが、x86_64 を実行している (そしてその下ですべてを再構築している) ため、Chrome OS で openssl を構築しようとすると、次のようになります。

    libcrypto.a(dso_dlfcn.o): In function `dlfcn_globallookup':
    dso_dlfcn.c:(.text+0x11): warning: Using 'dlopen' in statically linked applications  requires at runtime the shared libraries from the glibc version used for linking
    /usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/../../../../x86_64-unknown-linux-gnu/bin/ld: /usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/../../../../x86_64-unknown-linux-gnu/lib/../lib64/libdl.a(dlopen.o): relocation R_X86_64_PC32 against undefined symbol `__dlopen' can not be used when making a shared object; recompile with -fPIC
    /usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/../../../../x86_64-unknown-linux-gnu/bin/ld: final link failed: Bad value
    collect2: error: ld returned 1 exit status
    make[4]: *** [link_a.gnu] Error 1

でbinutilsを再構築しようとしまし-fPICたが、まだ運がありません。

4

1 に答える 1

0

エラーは、libdlで再コンパイルする必要があることを示しています-fPIC。それは、少なくとも XUbuntu 13.04 では、libcの一部です。binutils

于 2013-10-14T15:26:51.053 に答える