gcc/g++ の 2 つのバージョンがインストールされています。 /opt/gcc-4.4.3)。
gcc/g++ 4.4.3 をデフォルト バージョンにしたとき (「update-alternatives」を使用して、/usr/bin/gcc と /usr/bin/g++ がディレクトリ「/opt/gcc-4.4」の下の対応するものを指すようにします) .3/bin") を実行してファイルをコンパイルすると、常に次のエラーが報告されました。
/usr/include/c++/4.5/bits/basic_string.h:1659: `std::basic_string, std::allocator::_S_construct_aux_2(unsigned long, char, std::allocator const&)' への未定義参照
コンパイラが /usr/include/c++/4.5 の下で c++ のヘッダー ファイルを見つけようとしているようで、リンク エラーが発生します。gcc のデフォルト バージョンを gcc-4.5 に変更すると、エラーはなくなりました。
では、正しいディレクトリ "/opt/gcc-4.4.3/include" の下でコンパイラにヘッダー ファイルを検索させるにはどうすればよいでしょうか。CPLUS_INCLUDE_PATH をエクスポートしようとしましたが、うまくいかないようです。
PS: gcc -v
Using build-in specs
Target: x86_64-suse-linux
Configured with: ./configure --prefix=/opt/gcc-4.4.3
Thread model: posix
gcc version 4.4.3 (GCC)