2

LLVM / CLANG をダウンロードしてビルドを開始しました。最初に gcc バージョン 4.1.2 20080704 (Red Hat 4.1.2-48) をインストールしましたが、LLVM Web サイトではより高いバージョンを使用するように記載されていました。そこで、GCC gcc バージョン 4.7.2 (GCC) をダウンロードしてコンパイル/ビルドしました。以下の構成を設定した後、LLVMの構築を開始しました。

# setenv PATH /usr/local/lib:/usr/local/lib64:$PATH
# setenv LD_LIBRARY_PATH /usr/local/lib/:/usr/local/lib64/
# setenv CC /usr/local/bin/gcc

GCC 4.1.2 が利用可能なパスは /usr/bin ですが、4.7.2 のパスはデフォルトで /usr/local/bin にあります。

しかし、LLVM ビルドは次のように失敗しました。

In file included from /x/home/satprasad/llvm/llvm-3.1.src/projects/compiler-rt/lib/asan/asan_posix.cc:35:
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/algorithm:64:
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_algobase.h:69:
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/iosfwd:45:
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/x86_64-redhat-linux/bits/c++io.h:38:
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/x86_64-redhat-linux/bits/gthr.h:132:
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/x86_64-redhat-linux/bits/gthr-default.h:100:1: error: weakref declaration must have
      internal linkage
__gthrw(pthread_once)

ただし、4.1.2 バージョンではなく 4.7.2 バージョンのファイル/ヘッダーを選択する必要があります。これを修正する方法を教えてください。エラーが発生する行は、ファイル/コードの下にあります。

llvm-3.1.src/projects/compiler-rt/lib/asan/asan_posix.cc

#include <algorithm>

前もって感謝します

4

1 に答える 1

1

ランニング:

./configure --help

このオプションを示します。

--with-gcc-toolchain gcc がインストールされているディレクトリ。

だから試してください:

--with-gcc-toolchain /usr/local

また、環境変数を設定しないでください。

于 2012-11-29T08:03:28.777 に答える