2014年5月4日日曜日

CentOS 6でC/C++開発環境を整える

近年、パソコンの需要が急速に減退し、一気にスマートフォンに置き換わってきました。
ネット閲覧もパソコンからスマートフォンに主役が移ってきています。

そこでWeb周りの技術だけでなくネイティブアプリやデバイスの深い部分まで動かすにはC/C++の知識はどうしても必要になってきます。

ということでC/C++の入門から覚書まで適当に書いていきます。

使用環境:
CentOS 6.6 (Linux)

コンパイラのインストール

まず、ターミナルを開きC/C++が使える環境かどうか確認します。
$ which gcc
/usr/bin/gcc

$ which g++
/usr/bin/g++
と出ればコンパイル可能です。
無い人はyumでg++をインストールしてください
# yum install gcc gcc-c++
インストールできたら確認
$ g++ --version

g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 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.
CentOSの標準リポジトリのものは少々古いものです。
最新のC++11に対応したい場合はgcc 4.7以上にしないといけません。

CentOSは実用を重視しているので標準で提供されているソフトウェアは安定はしていますが少々古いバージョンのものしか提供されていません。最新とは言いませんが、せめて今のトレンドが追えるバージョンをインストール出来ないかと思うユーザーも多いかと思います。

そういった要望に答えるべく開発元のRedHatはSoftware CollectionsとDeveloper Toolsetというソリューションを提供してくれました。
Software Collectionsでは開発者の要望の高かったPHPやMySQLなど比較的新しいバージョンを提供してくれます。Developer ToolsetはC、C++等開発者向けのツールが提供されています。
また/opt以下にインストールされ、新しいバージョンと古いバージョンを使い分けることが出来ます。

Developer Toolset2.0ではGCC4.8を提供してくれているのでそれを使いましょう。

# cd  /etc/yum.repos.d/
# wget http://people.centos.org/tru/devtools-2/devtools-2.repo
# yum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ devtoolset-2-gcc-gfortran

これでインストール完了。
新しいバージョンのGCCを使うには次のコマンドで変更します。

$ scl enable devtoolset-2 bash
$ g++ --version
g++ (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)
Copyright (C) 2013 Free Software Foundation, Inc.

これでCentOSでもC++11の開発が可能になります。

エディターのインストール

エディタは使い勝手のよくメジャーなEmacsを使用します。

$ which emacs

で無ければインストールしてください。

# yum -y install emacs

でバージョン確認

$ emacs --version
GNU Emacs 23.1.1
Copyright (C) 2009 Free Software Foundation, Inc.
GNU Emacs comes with ABSOLUTELY NO WARRANTY.
...........

CentOSでは最新版ではないですが最新版が欲しい場合は
ここのミラーあたりからダウンロードして自分でmakeしてください。

0 件のコメント:

コメントを投稿