54
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

posted at

updated at

Sublime TextでC++の開発環境を作る

Ubuntu 12.10をベースに、Sublime Text 2でC++の開発環境を整えてみました。

sublime textのインストール

公式サイトにはtar ballがありますが、PPAがあるのでそちらを利用してインストールします。

sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update
sudo apt-get install sublime-text

Sublime Package Control のインストール

パッケージの管理のためにPackage Controlをインストールします。

  1. ctrl + shift + @ でプロンプト表示します。
  2. 以下のコマンドを実行します。
import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'
  1. Sublime Text を再起動します。

SublimeClang のインストール

SublimeClangをインストールします。
SublimeClangをインストールすると以下のことができるようになります。

  • C/C++のコード補完
  • ヘッダーファイルへの移動
  • 構文エラーなどのチェック

SublimeClangはPackage Controlを使ってインストールします。

  1. ctrl + shift + p でプロンプト表示
  2. 「install」と入力し候補の「Package Control: Install Package」を選択
  3. 「clang」と入力し候補の「SublimeClang」を選択。しばらく待つとインストールされる

エラー対応

起動すると「Unfortunately ctypes can't be imported, so SublimeClang will not work.」とダイアログが出てSublimeClangが使えません。
Linux特有の問題なようなので次の手順でPythonとclangの設定をします。

python 2.6のインストール

sudo apt-get install curl
curl -kL http://xrl.us/pythonbrewinstall | bash
source "$HOME/.pythonbrew/etc/bashrc"
pythonbrew install --configure="--enable-unicode=ucs4" 2.6
sudo ln -s $HOME/.pythonbrew/pythons/Python-2.6/lib/python2.6 /usr/lib/sublime-text-2/lib/

ライブラリの作成

sudo apt-get install cmake clang    
wget wget http://llvm.org/releases/3.2/clang+llvm-3.2-x86_64-linux-ubuntu-12.04.tar.gz
tar xvf clang+llvm-3.2-x86_64-linux-ubuntu-12.04.tar.gz
cp clang+llvm-3.2-x86_64-linux-ubuntu-12.04/lib/libclang.so ~/.config/sublime-text-2/Packages/SublimeClang/
cd ~/.config/sublime-text-2/Packages/SublimeClang/src
mkdir build
cd build
cmake ..
make

参照するヘッダファイルの追加

開発で作成した独自のヘッダファイルは、同じフォルダにない限りSublimeClangからは参照されず、includeを書いてもエラーとなります。
解決するには、Sublime Textのプロジェクトの設定ファイルにヘッダファイルがあるディレクトリのパスを追記します。これでinclude文がエラーにならず、補完も効くようになります。

  1. [Project] - [Save Project As…]メニューでプロジェクトを作成する。ファイル名がプロジェクト名になるので、任意の名前を付ける。
  2. [Project] - [Edit Project]メニューよりプロジェクトの設定ファイルを開く。
  3. 設定ファイルにヘッダファイルへのパスを追加する。
{
    "settings": {
        "sublimeclang_options": [
            "-I/path/to/foo/include",
            "-I/path/to/bar/include"
        ]
    }
}

これでSublime Text上でのC/C++開発環境が整いました。重いIDEを立ち上げなくてもSublime Text上でほぼ開発が完結するので非常に開発が楽になりました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
54
Help us understand the problem. What are the problem?