システムのgccバージョンを確認しました。
現在は4.6.3です。gcc-4.8がリリースされたことを読みました。
次のコマンドを試してみましたが成功しませんでした:
sudo apt-get install gcc (gcc is already the newest version)
sudo apt-get install gcc-4.8 (unable to locate package)
このパッケージを12.04にインストールする方法を知っている人はいますか?
システムのgccバージョンを確認しました。
現在は4.6.3です。gcc-4.8がリリースされたことを読みました。
次のコマンドを試してみましたが成功しませんでした:
sudo apt-get install gcc (gcc is already the newest version)
sudo apt-get install gcc-4.8 (unable to locate package)
このパッケージを12.04にインストールする方法を知っている人はいますか?
回答:
GCC-4.8は12.04 Preciseで利用できますか?
更新:2013年6月5日の時点で、12.04(正確)用のgcc 4.8.1のリリースがhttps://launchpad.net/~ubuntu-toolchain-r/+archive/testで入手可能です。
簡単な答えは、gcc-4.8
現在、ツールチェーンPPAを介して、 またはソースをコンパイルすることにより、12.04(Precise)で利用可能です(詳細は以下を参照)。
リリースのお知らせ
gcc-4.8のリリースのアナウンスは 3月22日に行われたので、おそらく公式リポジトリでまだこれを見ることはないでしょう。
ただし、Launchpadには、gcc-4.8を含むツールチェーンテストビルドで使用できるPPAがあります(https://launchpad.net/~ubuntu-toolchain-r/+archive/test)
changelogとパッケージリストによると、i386、amd64、arm、powerpcにはdebsがあり、13.04のraringに対してビルドされました。
12.04用のgccの最新バージョンは4.8.1で、ツールチェーンPPAで入手できます。
ツールチェーン/テストPPAの追加:
PPAをシステムに追加するには、ターミナルを開き(Ctrl+ Alt+ t)、次のコマンドを実行します。
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
また、いくつかの推奨パッケージをインストールするよう求められます。これらのパッケージは、gcc-4.8のインストールに推奨されますが、オプションです。
gcc-4.7.2では利用できないgcc-4.8で利用できるC ++機能は何ですか?
gcc-4.8リリースの時点で、gcc-4.7は64の機能のうち8つをサポートしていません(GCCでのC ++ 0x / C ++ 11サポートを参照)。
これらの機能は次のとおりです。
Language Features
- Rvalue references for *this
- Generalized attributes
- Alignment support
- Inheriting constructors
Concurreny
- Bidirectional Fences
- Memory model
- Abandoning a process and at_quick_exit
- Thread-local storage
12.04 Preciseでこれらのgcc機能が必要になりました。どうすれば入手できますか?
ソースからのGCC-4.8のビルド:
12.04でgcc-4.8が必要な場合、唯一の選択肢はsourceからビルドすることです。
インストールの前にGCCインストールFAQを読んでください。
gcc.4.8は、gnu.orgのミラーサイトの1つから、またはSVNサーバーから直接ダウンロードできます。
ソースからコンパイルする手順の例を次に示します(詳細については、こちらを参照してください)。これらは、システムや設定によって異なる場合があります。
ソースコードをダウンロードする
追加のライブラリをインストールします(sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libc6-dev
)
./gcc-4.8.0/configure --prefix=/app/gcc/4.8.0
make
(これは完了するまで時間がかかります。コーヒーを作るか、クッキーを焼きます。;-))sudo make install
このプロセスが完了したら、コマンドgcc --version
を実行して、インストールが正常に完了したことを確認します。次のような出力が表示されるはずです。
maggotbrain@foucault:~$ gcc --version
gcc (Linaro 4.8.0) 4.8.0
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
結論:インストールしやすいUbuntuバックポートを提供してくれたすべての人々に感謝します。実行中に焼いたCookieをいくつか提供しますmake
。;-)
E: Unable to locate package gcc-4.8
./contrib/download_prerequisites.sh
修正しました(stackoverflow.com/questions/9253695/…から)。
gcc: error trying to exec 'cc1plus': execvp: No such file or directory 4.8
。
したがって、少なくとも手動インストールの場合、上記の回答は機能します。でもsudo make install
、実行してgcc
もストックバージョン4.6.3が実行されるだけです。試してgcc-4.8
もgcc-4.8.0
うまくいかない。/app/gcc/4.8.0/bin/gcc
私にとっては、実行することが唯一の方法のようです。私はそれが一種の不自由なことを意味しますが、少なくともそれは動作します。