Mint 18.1で独自のC ++ noodling用に別々のGCCツールチェーンをインストールする方法(またはインストールできない、またはインストールしないでください)に関するHowToまたは情報はありますか?
通常のシステムの何も壊したくないので、新しいPPAを探したくないですか?または、付属の5.4の代わりに何を使用しますか?将来のカーネルアップグレードで何かを再コンパイルすると、混在したコンパイラバイナリ/ライブラリが発生するのではないかと心配されます。
デフォルトでは、私はこの新しいツールチェーンを使用してそのボックスのコーディングを直接実行します。すべてのシステムでのコンパイルには適していません。
答え1
最新バージョンのGCCをインストールしても問題は発生しません。最新バージョンのGCCでLinuxカーネルモジュールをコンパイルすると、奇妙なエラーが発生する可能性がありましたが、それは10年以上経っていました。
それにもかかわらず、リスクを軽減し、パッケージ管理の手間を避けるために、別のバージョンを別々にインストールすることをお勧めします。複数のコンパイラを使用してビルドをテストしたい場合は、特にこの方法をお勧めします。複数のバージョンのGCCをインストールできますが、目的のバージョンを選択し、基本バージョンが特定の目的で使用されていないことを確認することは必ずしも簡単ではありません。実行はmake CC=gcc-4.2
簡単ですがg++
、などas
を処理せず、ld
一般変数の代わりにハードコードされたツール名を持つコマンドも処理しません。非コラボレーションビルドスクリプトでも特定のツールチェーンを使用できるようにするには、そのツールチェーンを別のディレクトリに配置し、そのディレクトリを/usr/bin
PATHの前に追加します。
GNU GCCをインストールするための推奨方法は、一連のコマンドを使用してソースからコンパイルすることです。
tar -xzf gcc-4.2.tar.gz
mkdir gcc-4.2-native-bin
cd gcc-4.2-native-bin
../gcc-4.2/configure --prefix /opt/gcc-4.2 # plus a target to build a cross-compiler
make
sudo make install
答え2
インストールされているバイナリのみをアップグレードしてくださいgcc
。あるいは、クロスコンパイルされたいくつかのバージョンを除いて複数のバージョンをインストールしても、何らかの理由で常に複数のバージョンをインストールします(Mint以外のDebianでは重要ではありませんが、同じパッケージマネージャなので)。
何も壊れません。私のようにカーネルを直接コンパイルすると、何も壊れません。 DKMSモジュールにも問題が発生したことはありません。
もしそうなら会議何でも壊してもいつでも再インストールできます。したがって、注意する必要はありません。