最近私はそれを完了し、emerge -e world
それがgcc
フラグなしでコンパイルされたことを発見しましたcxx
。 C++ パッケージをコンパイルできません。
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
equery f gcc|grep -v share
stage3から返されたファイルをコピーしようとしています。役に立ちましたか?より簡単な方法がありますか?
アップデート1 これは私のものです。構成ログ
アップデート2
これは私のものです。構成ファイルの作成cxx
USEにはフラグがあります。最近追加しましたが、パッケージを再構築できず、役に立ちませんでした。
アップデート3私はバイナリパッケージからgcc-4.6.3を再インストールしてみました。
emerge -avK gcc:4.6
正常に完了しましたが、エラーは消えません。
さらに、私は次の事実を見つけました:
configure:11955: /lib/cpp conftest.cpp
cpp: error: conftest.cpp: C++ compiler not installed on this system
configure:11955: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "expat"
| #define PACKAGE_TARNAME "expat"
| #define PACKAGE_VERSION "2.1.0"
| #define PACKAGE_STRING "expat 2.1.0"
| #define PACKAGE_BUGREPORT "[email protected]"
| #define PACKAGE_URL ""
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h. */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
| Syntax error
私のシステムにC ++コンパイラがインストールされていないと主張しているようです。しかし、これはbin-packageからインストールされたため、ゴミのように聞こえ、gcc:4.6
C ++サポートでコンパイルされたと仮定します。
アップデート4実際、g++には何か問題があります。
uhradio ~ # g++ queue.cpp
gcc-config: error: could not run/locate 'g++'
uhradio ~ # cpp queue.cpp
cpp: error: queue.cpp: C++ compiler not installed on this system
出力はgcc-config -l
次のとおりです
[1] x86_64-pc-linux-gnu-4.6.3 *
答え1
これあなたが探しているものかもしれません。つまり、カーネルヘッダーのみをインストールすると完了です。
答え2
それでも役に立ちませんでした。手動でディレクトリにemerge -avK gcc:4.6
抽出して設定しました。私は役に立ちました(私はすでにそれをしましたが、手動で再シンボリックリンクしました。今、USEフラグを使用して2つのgccs(4.5と4.6)を再構築しています)。gcc-4.6.3.tbz2
/
gcc-config 1
/usr/lib
/usr/lib64
cxx
私の問題はもう別の問題になりました。cxx
stage3構築システムでUSEフラグが消えるのはなぜですか?私は何年もの間Gentoo Linuxをインストールしてきましたが、このように明示的cxx
にUSEフラグを設定したことはありません。