bambooflow Note

cmake

最終更新:

bambooflow

- view
メンバー限定 登録/ログイン

ODE:cmakeでコンパイル



cmakeはMakefileより便利です。
Makefileをごりごり作るよりもcamkeをインストールして、ちょっと使い方を覚えた方が手間が省けます。
ということで、ODEでのcmakeの導入についてメモします。


Linux(Ubuntu10.10)でcmake


インストール


次のコマンドを実行。

% sudo apt-get install cmake

最近のLinuxのディストリビューションならばapt-getとかyumとかでインストールできると思われます。

CMakeList.txtの準備


odeは、makeまで実行した状態でOK。(make installはしなくてよい)

set(PROJ_NAME hello)
set(TARGET ${PROJ_NAME})
 
# プロジェクト名
project(${PROJ_NAME})
 
set(ODE_PATH ../ode-0.11.1)
set(ODE_INC_PATH ${ODE_PATH}/include)
set(ODE_LIB_PATH ${ODE_PATH}/ode/src/.libs)
set(DS_INC_PATH  ${ODE_PATH}/include)
set(DS_LIB_PATH  ${ODE_PATH}/drawstuff/src/.libs)
 
# インクルードパスの追加
include_directories(${ODE_INC_PATH} ${DS_INC_PATH})
 
# ライブラリパスの追加
link_directories(${ODE_LIB_PATH} ${DS_LIB_PATH})
 
# マクロ設定 [-D]
add_definitions(-DdDOUBLE)
 
# 実行ファイルとソースファイル群
add_executable(${TARGET} ${PROJ_NAME}.cpp)
 
# ライブラリ
target_link_libraries(${TARGET} m ode drawstuff GLU GL)
 
 


サンプル実行


とりあえず適当にファイルを準備。

  • hello.cpp
#include <ode/ode.h>
#include <stdio.h>
 
int main(int argc, char* argv[])
{
    printf("Cmake de Hello ODE!!!\n");
    return 0;
}
 


hello.cppとCMakeList.txtが同じディレクトリにある状態で次のコマンドを実行。

% cmake .

すると、Makefileが生成される。
あとは、コンパイル、そして実行。

% make
% ./hello
Cmake de Hello ODE!!!


無事に実行できれば、OKです。



その他のCMakeオプション


メモ。
# 要求するCMakeのバージョン
cmake_minimum_required(VERSION 2.6)
 
# build type
set(CMAKE_BUILD_TYPE Debug)
 
# compile option (DEBUG)
set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall")
set(CMAKE_C_FLAGS_DEBUG "-g -Wall")
 
# compile option (Release)
set(CMAKE_CXX_FLAGS_RELEASE "-Wall -O3")
set(CMAKE_C_FLAGS_RELEASE "-Wall -O3")
 
 




以上

タグ:

CMake
記事メニュー
目安箱バナー