C++ によるビルド手順

naoqiについて、C++のビルド手順の理解が面倒なので、以下にメモをしたためておく。(ただし、すべて、Linuxでの手順である。MacやWindowsは、参考にしていただくにとどまる)

いま、あるプロジェクトを開始しようとしたという状況を考える。まず、DocumentのC++SDK installの、qibuild installation (D)の項までを行なっていることは前提となる。これについては、こちらも参照されたい。

まず、これからさまざまなプロジェクトをつくっていこうとするトップフォルダを決める。そのフォルダの中に個別プロジェクトのフォルダがつくられていくというねらいである。あるいは、サブフォルダをつくってその下にプロジェクトを配置しても良い。なにしろ、そうしたプロジェクトに関わるトップフォルダからのツリーを、work-treeと呼んでいるようだ。

以下このトップフォルダを、/pathto/robotというフォルダで新規に作成したとしよう。当然名前は何でも良い。まず、このフォルダにカレントディレクトリを移して、
$ qibuild init
というコマンドを打つ。($は単なるプロンプトである)このコマンドは、空のフォルダでないと、失敗する。.qiというシステムフォルダーがつくられて設定ファイルが自動作成される。

次に、toolchainを設定する。これをしないでおくと、ライブラリがないなどと叱られてにっちもさっちもいかなくなる。(何度も経験したので・・・・)
$ qitoolchain create mytoolchain /path/to/SDKfolder/naoqi-sdk/toolchain.xml --default
ここで、/path/to/SDKfolder/naoqi-sdkは、toolchain.xmlがあるsdkをインストールしたフォルダ である。各自異なっているだろう。これによって、先ほどinitで作成した.qiフォルダのなかにあるqibuild.xmlに、このmytoolchainが指定されるのだが、気にしなくてよい。
-----------------------------
注:場合によっては(理由がわからないという意)、-defaultオプションが有効でない場合がある。その場合は、(1)qibuild initをやったフォルダにいるかどうかをチェック、そのうえで(2)-defaultをはずしてみる。それでうまくいったら、下に記載のqibuild configure と qibuild makeの段階で、-c mytoolchainとオプションをつけてやればうまくいく場合がある。
-----------------------------

これで、一応プロジェクトを作成していく、準備はできたはずである。

プロジェクトを作成するのは次のコマンドである。(新しいプロジェクトの名前をnewprojectとする)
$ qisrc create newproject
これによって、現在のフォルダ(/pathto/robotc)の中にnewprojectというフォルダが作成され、そのなかにいくつかのファイルが自動的に作成される。

あとは、ソースファイルを作成したりCMakeファイルを改訂することによって、ビルド可能になる。ビルドは、
$ qibuild configure
$qibuild make
で実現する。

このトップフォルダー以下に(サブフォルダも含め)、プロジェクトを作成する限り、toolchainやinitなどに再度関わる必要はない。

これでようやくC++を使えそうだなという感じになる。

コメントを残す