###前提・実現したいこと
http://demura.net/9ode/548.htmlのサイトを参考にしてODEを使用したいのですが、環境設定後、例題の問題をコンパイルしてもエラーが出ます。
ただ、自作プログラム作成時のみエラーをはいてしまい、もともとあるサンプルプログラムでは動かすことが可能です。
###発生している問題・エラーメッセージ
||=== ビルド: DebugDoubleLib in hello (compiler: GNU GCC Compiler) ===|
ld.exe||cannot find -lode_doubled|
||error: ld returned 1 exit status|
||=== Build 失敗: 2 エラー, 0 警告 (0 分, 0 秒) ===|
###該当のソースコード
#include <ode/ode.h>
#include <drawstuff/drawstuff.h>
dWorldID world; // 動力学の世界
dBodyID apple; // リンゴ
dReal r = 0.2, m = 1.0; // リンゴの半径,質量
dsFunctions fn; // ドロースタッフ用の構造体
void simLoop(int pause) /*** シミュレーションループ ***/
{
dWorldStep(world,0.01); // シミュレーションを1ステップ進める
dsSetColor(1.0,0.0,0.0); // 赤色の設定(r,g,b)
const dReal *pos = dBodyGetPosition(apple); // リンゴの位置を取得
const dReal *R = dBodyGetRotation(apple); // リンゴの姿勢を取得
dsDrawSphereD(pos,R,r); // リンゴの描画
}
void start() /*** 前処理 ***/
{
static float xyz[3] = {3.0,0.0,1.0}; // 視点の位置
static float hpr[3] = {-180, 0, 0}; // 視線の方向
dsSetViewpoint(xyz,hpr); // カメラの設定
}
void setDrawStuff() /*** 描画関数の設定 ***/
{
fn.version = DS_VERSION; // ドロースタッフのバージョン
fn.start = &start; // 前処理 start関数のポインタ
fn.step = &simLoop; // simLoop関数のポインタ
fn.path_to_textures = "../../drawstuff/textures"; // テクスチャ
}
int main(int argc, char argv) /* main関数 ***/
{
setDrawStuff(); // 描画関数の設定
world = dWorldCreate(); // 世界の創造
dWorldSetGravity(world,0,0,-0.2); // 重力設定
apple = dBodyCreate(world); // ボールの生成
dMass mass; // 構造体massの宣言
dMassSetZero(&mass); // 構造体massの初期化
dMassSetSphereTotal(&mass,m,r); // 構造体massに質量を設定
dBodySetMass(apple,&mass); // ボールにmassを設定
dBodySetPosition(apple, 0.0, 0.0, 2.0); // ボールの位置(x,y,z)を設定
dsSimulationLoop(argc,argv,320, 240,&fn); // シミュレーションループ
dWorldDestroy(world); // 世界の終焉
return 0;
}
###試したこと
プロパティの設定やアンインストール、他のPCでの実行
サンプルフォルダで自作プログラムを作成し実行
###補足情報(言語/FW/ツール等のバージョンなど)
code:blocks 16:02
ODE 0.13
あなたの回答
tips
プレビュー