ODE0.11.1ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ³• (Visual C++ 2008 EE)
ODE0.11.1ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ³•を説明ã—ã¾ã™ï¼Žä»Šå›žã¯ä¸€ç•ªãƒ¦ãƒ¼ã‚¶ãŒå¤šã„ã¨æ€ã‚れるWindows Vistaã¨Visual C++ 2008 Expression Editionを使ã£ãŸå ´åˆã§ã™ï¼Ž
- A. Visual C++ 2008 Expression Editionã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«
- B. ODEã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰
- C. ODEã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«
- D. ODE本ã®ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ をビルドã™ã‚‹æ–¹æ³•
- A. Visual C++ 2008 Expression Editionã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«
- B. ODEã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰
- ode-0.11.1.zipをダウンãƒãƒ¼ãƒ‰ã—,デスクトップã¸ä¿å˜ã™ã‚‹ï¼Ž
- è§£å‡ã‚½ãƒ•ãƒˆã®æº–備(æŒã£ã¦ã„ãªã„æ–¹ã®ã¿ï¼‰
- ode-0.10.1.zipã¯zipフォーマットã§åœ§ç¸®ã•れã¦ã„ã¾ã™ã®ã§zipã‚’è§£å‡ã§ãるソフトウェアをインストールã—ã¦ãã ã•ã„.ã“ã“ã§ã¯ï¼Œç§ãŒæ„›ç”¨ã—ã¦ã„ã‚‹Lhaplusã¨ã„ã†åœ§ç¸®ãƒ»è§£å‡ã‚½ãƒ•トを使ã„ã¾ã™ï¼ŽGoogleã§Lhaplusを検索ã™ã‚‹ã¨ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰å…ˆã‚’ç°¡å˜ã«è¦‹ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã™ï¼Ž
- è§£å‡ã¨ç§»å‹•
- デスクトップã«ã‚ã‚‹ode-0.11.1.zipをダブルクリックã™ã‚‹ã¨ã€ode-0.11.1ã¨ã„ã†ãƒ•ォルダーãŒãƒ‡ã‚¹ã‚¯ãƒˆãƒƒãƒ—ã«ç”Ÿæˆã•れã¾ã™ã€‚
- ode-0.11.1フォルダをCドライブã®ã™ã下ã«ç§»å‹•ã™ã‚‹
- マウスをode-0.11.1フォルダーã«å½“ã¦ã€å³ãƒžã‚¦ã‚¹ãƒœã‚¿ãƒ³ã‚’クリックã€ã€Œåˆ‡ã‚Šå–り(T)ã€ã‚’é¸æŠž
- スタート→(マイ)コンピュータ→ãƒãƒ¼ã‚«ãƒ«ãƒ‡ã‚£ã‚¹ã‚¯(c)をダブルクリック
- マウスã®å³ãƒœã‚¿ãƒ³ã‚’クリックã—ã€ã€Œè²¼ã‚Šä»˜ã‘(P)ã€ã‚’é¸æŠž
- ビルド(ライブラリã®ä½œæˆï¼‰
- ode-0.11.1ã§ã¯premakeコマンドを使ã£ã¦Visual C++ 2008用ã®ã‚½ãƒªãƒ¥ãƒ¼ã‚·ãƒ§ãƒ³ãƒ•ァイルを作æˆã§ãã¾ã™ï¼Ž
- コマンドプãƒãƒ³ãƒ—トを起動ã™ã‚‹ï¼Ž
スタート→ã™ã¹ã¦ã®ãƒ—ãƒã‚°ãƒ©ãƒ →アクセサリ→コマンドプãƒãƒ³ãƒ—ト - 以下ã®ã‚ˆã†ã«ã‚³ãƒžãƒ³ãƒ‰ã‚’打ã¡è¾¼ã‚€ï¼Žã‚«ãƒƒãƒˆã‚¢ãƒ³ãƒ‰ãƒšãƒ¼ã‚¹ãƒˆ ã®å ´åˆã¯ä»¥ä¸‹ã®æ–‡å—列を使用ã—ï¼Œè‡ªåˆ†ã§æ‰“ã¡è¾¼ã‚€å ´åˆã¯ï¼’個ã®-(マイナス)æ–‡å—ãŒã¤ãªãŒã£ã¦è¦‹ãˆã‚‹ã®ã§ï¼Œä¸‹ç”»åƒã‚’å‚ç…§ã—ã¦æ³¨æ„æ·±ãæ‰“ã¡è¾¼ã‚“ã§ãã ã•ã„.
- Visual C++ 2008 Express Editionã‚’èµ·å‹•
- メニューãƒãƒ¼ã‹ã‚‰ã€Œãƒ•ァイル(F)ã€â†’「開ã(O)ã€â†’「プãƒã‚¸ã‚§ã‚¯ãƒˆ/ソリューション(P)ã€ã‚’é¸æŠž
-
c:\ode-0.11.1\build\vs2008\ode.sln
ã‚’é¸æŠž
- ビルドターゲットを必ãšDebugDoubleLibã¨ã™ã‚‹ï¼Žã“れã¯ãƒ‡ãƒãƒƒã‚°å‘ã‘,å€ç²¾åº¦ï¼Œé™çš„ライブラリ用.ODEã§ã¯DLL(Dynamic Link Library)よりé™çš„ライブラリ(Static Library)ãŒæŽ¨å¥¨ã•れã¦ã„ã¾ã™ï¼Žã¾ãŸï¼ŒDebugSingleLibã‚’é¸ã¶ã¨å˜ç²¾åº¦ã®é™çš„ライブラリãŒç”Ÿæˆã•れã¾ã™ãŒï¼Œã‚¨ãƒ©ãƒ¼ãŒå‡ºã‚„ã™ã„ã®ã§ãŠå‹§ã‚ã§ãã¾ã›ã‚“.

- 「ビルド(B)ã€â†’「ソリューションã®ãƒ“ルド(B)ã€ã‚’é¸æŠž
- デモプãƒã‚°ãƒ©ãƒ ã®å®Ÿè¡Œãƒ•ァイルã¯
- c:\ode-0.11.1\lib\DebugDoubleLib ã«ç”Ÿæˆã•れる.
- 試ã—ã«ï¼Œdemo_basket.exeをダブルクリックã—ã¦èµ·å‹•ã™ã‚Œã°ODEã®ãƒ“ルドæˆåŠŸï¼Žã“れã§ï¼ŒODEã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã¯çµ‚ã‚りã§ã™ã€‚
- ダウンãƒãƒ¼ãƒ‰ã‚«ãƒ†ã‚´ãƒªãƒ¼ã‹ã‚‰robosimu******(******ã¯æ—¥ä»˜ï¼‰ã‚’ダウンãƒãƒ¼ãƒ‰ã—ã¦ï¼Œ
c:\ode-0.11.1
ã«ã‚³ãƒ”ーã—,ãã“ã«è§£å‡ã™ã‚‹ï¼Žè§£å‡ã«æˆåŠŸã™ã‚‹ã¨
c:\ode-0.11.1\roboSimu
ã¨ã„ã†ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãŒç”Ÿæˆã•れる.ãã®ä¸ã«ã¯src, texturesフォルダー,premake.exe, premake.lua, Readme.txt, roboSimu.luaファイルãŒãŒã‚り,ã¾ãŸï¼Œsrcフォルダーã®ä¸ã«ã¯ODE本ã®ã‚µãƒ³ãƒ—ルコードãŒã‚る.
- ODEã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã¨åŒã˜ã‚ˆã†ã«ï¼Œpremakeコマンドを使ã„,ソリューション,プãƒã‚¸ã‚§ã‚¯ãƒˆãƒ•ァイルを生æˆã™ã‚‹ï¼Žã‚³ãƒžãƒ³ãƒ‰ãƒ—ãƒãƒ³ãƒ—トを起動ã—,以下ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ï¼Ž
-
cd c:\ode-0.11.1\roboSimu
-
premake --target vs2008 注:targetã®å‰ã¯-(マイナス)ãŒï¼’個連続.
-
- Visual C++ 2008 Express Editionã‚’èµ·å‹•
- メニューãƒãƒ¼ã‹ã‚‰ã€Œãƒ•ァイル(F)ã€â†’「開ã(O)ã€â†’「プãƒã‚¸ã‚§ã‚¯ãƒˆ/ソリューション(P)ã€ã‚’é¸æŠž
-
c:\ode-0.11.1\roboSimu\src\roboSimu.sln
ã‚’é¸æŠž
-
- ビルドターゲットをDebugLibã¨ã™ã‚‹ï¼Ž

- 「ビルド(B)ã€â†’「ソリューションã®ãƒ“ルド(B)ã€ã‚’é¸æŠž
- サンプルプãƒã‚°ãƒ©ãƒ ã®å®Ÿè¡Œãƒ•ァイルã¯c:\ode-0.11.1\roboSimu\DebugLibã«ç”Ÿæˆã•れる.
- 試ã—ã«ï¼Œarm1.exeをダブルクリックã—ã¦èµ·å‹•ã™ã‚Œã°æˆåŠŸï¼ŽãŠç–²ã‚Œæ§˜ã§ã—ãŸï¼


demuã•ã¾ã€ã¯ã˜ã‚ã¾ã—ã¦ã€‚
ã“ã“ã®ãƒ›ãƒ¼ãƒ ページをå‚考ã«è‡ªåˆ†ã®ãƒ‘ソコンã«ODEをインストールã—ã€roboSimuã®ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ ã¾ã§å‹•作ã™ã‚‹ã“ã¨ã‚’確èªã—ã¾ã—ãŸã€‚ã—ã‹ã—ã€ãƒ—ãƒã‚°ãƒ©ãƒ ã®å®Ÿè¡Œé€Ÿåº¦ãŒç•°å¸¸ã«é€Ÿã„状態ã§ã™ã€‚dWorldStepã®å€¤ã‚’å°ã•ãã™ã‚Œã°ç‰©ä½“ã®å‹•作ã¯ã‚†ã£ãりã«ãªã‚Šã¾ã™ãŒã€é›²ã®æµã‚Œã¯é€Ÿã„ã¾ã¾ã§è§£æ±ºã«ã¯ãªã£ã¦ã„ãªã„よã†ã«æ€ã„ã¾ã™ã€‚
自宅ã®ç’°å¢ƒã¯windows7(64bit),ode-0.11.1,visual C++2008ã§ã™ã€‚ã‚‚ã†ä¸€å°windows7(32bit)ã®ãƒ‘ソコンã§ã‚‚試ã—ã¾ã—ãŸãŒåŒã˜ç—‡çжã§ã™ã€‚妿 ¡ã®windows7(64bit),ode-001(?),visual C++2008ã®ç’°å¢ƒã§ã¯æ£å¸¸ã«å‹•作ã—ã¦ã„ã‚‹ã®ã§ã€ä½•ã‹è¨å®šã®å•題ãªã®ã§ã—ょã†ã‹ï¼Ÿ
æ€ã„当ãŸã‚‹ã“ã¨ãŒã‚りã¾ã—ãŸã‚‰ã€çŸ¥æµã‚’貸ã—ã¦ã„ãŸã ã‘れã°ã¨æ€ã„ã¾ã™ã€‚よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚
shiroã•ã¾
返事ãŒé…ããªã‚Šã™ã¿ã¾ã›ã‚“.
ã•ã¦ï¼Œé›²ã®æµã‚Œã‚’é…ãã™ã‚‹ãŸã‚ã«ã¯ï¼Œ
ode-0.11.1/drawstuff/src/drawstuff.cppã®drawSky関数内ã®983行ã«ã‚る以下ã®ã‚³ãƒ¼ãƒ‰ã®è¶³ã™æ•°å—ã‚’å°ã•ãã—ã¦ãƒ“ルドã—ãªãŠã—ã¦ãã ã•ã„.
offset = offset + 0.002f;
ã§ã‚€
demuã•ã¾
返信ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚é›²ã®æµã‚Œã‚‹é€Ÿã•ãŒå¤‰ã‚ã‚‹ã“ã¨ãŒç¢ºèªã§ãã¾ã—ãŸã€‚ã“ã‚“ãªã¨ã“ã‚ã§ã„ã˜ã‚Œã‚‹ã®ã§ã™ã。
ã¾ãŸè³ªå•ã«ãªã£ã¦ã—ã¾ã†ã®ã§ã™ãŒã€å…¨ãåŒã˜ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã®ãƒ—ãƒã‚°ãƒ©ãƒ ãŒã€ä½¿ã†ãƒ‘ソコンã«ã‚ˆã£ã¦å®Ÿè¡Œé€Ÿåº¦ãŒå¤‰ã‚ã£ã¦ã—ã¾ã†ã®ã¯ã€Visual C++ã®è¨å®šãŒå•題ãªã®ã§ã—ょã†ã‹ï¼ŸCorei7ã‚„i5ã‚’ç©ã‚“ã§ã„るパソコンãªã®ã§ã€æ€§èƒ½ã§å·®ãŒå‡ºã¦ã„ã‚‹ã‚ã‘ã§ã¯ãªã„ã ã‚ã†ãªï½žã¨æ‚©ã‚“ã§ãŠã‚Šã¾ã™ã€‚
よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚
demuã•ã¾
返事ãŒã„ãŸã ãã¾ã—ãŸã€‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚
今確èªã—ã¾ã—ãŸã€‚上記二ã¤å•題ãŒãªã„ã¯ãšã§ã™ã€‚ビルドターゲットをDebugDoubleLibã¨ã—ã¾ã—ãŸã€‚
dsDrawSphereD関数ã«å¯¾ã—ã¦hello.cppã¯è‡ªå‹•ã§doubleåž‹å¼ã«èªè˜ã•れã¾ã—ãŸã€‚但ã—dRealã¯floatã«èªè˜ã•れã¾ã—ãŸã€‚(common.hä¸typedef float dReal)
(DS_API void dsDrawSphereD (const double pos[3], const double R[12],const float radius);)
ã¡ãªã¿ã«demo_basket.exeã¨arm1.exeã¯å®Ÿè¡Œã™ã‚‹ã“ã¨ãŒã§ã„ã¾ã™ã€‚
ã‚‚ã—ã“ã®ã‚ˆã†ã«dsDrawSphereD((double*)pos,(double*)R,r)ã‚ャストã—ã¾ã—ãŸã€‚æ–°ã—ã„エラー(ODE message 2: inertia must be positive definite c:\ode-0.11.1\ode\src\mass.cpp)
ã‚‚ã—C:\ode-0.11.1\roboSimu\srcä¸ã®hello.vcprojを使ã£ã¦helloã¯å®Ÿè¡Œã™ã‚‹ã“ã¨ã§ãã¾ã—ãŸã€‚(dRealã¯doubleã«èªè˜ã•れã¾ã—ãŸï¼‰
エラーãŒå‡ºã‚‹programmã¯visual c++2008ã§æ–°ã—projectを作ã£ãŸã ã‘ã§ã™ã€‚ãã®ä»–hello.cppã€texture.hã€resourcesã€ode.hã€drawstuff.hã€drawstuffd.libã€ode_doubled.libåŠã³è¨å®šã¯C:\ode-0.11.1\roboSimu\srcä¸ã®hello.vcprojã¨å®Œå…¨ã«åŒã˜ã«ãªã£ãŸã€‚
ãれã§ã“ã®ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ãŒã‚ˆãã‚ã‹ã‚‰ãªã„ã§ã™ã€‚
よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚
demuraã•ã¾ï¼š
上記教ãˆãŸé€šã‚Šã«ODEをインストールã—ã¾ã—ãŸã€‚ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚
但ã—visual v++2008ã§æœ¬ã«ç¬¬ä¸€ç« ã«Hello.cppã®ãƒ—ãƒã‚°ãƒ©ãƒ をビルドã™ã‚‹ã¨ãã«ã‚¨ãƒ©ãƒ¼ã‚’出ã¾ã—ãŸã€‚
error C2664: ‘dsDrawSphereD’ : cannot convert parameter 1 from ‘const dReal *’ to ‘const double []‘
ã¡ãªã¿ã«include fileã¨libã‚’æ£ã—ãprojectã®propertiesã«è¨å®šã—ã¾ã—ãŸã€‚
よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚
Riã•ん,
ã“ã®ã‚¨ãƒ©ãƒ¼ã®åŽŸå› ã¯ã„ãã¤ã‹ã‚りã¾ã™ï¼Ž
1.ODEã‚’å€ç²¾åº¦ã§ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ã¦ã„ãªã„
2. #define dsDrawSphere dsDrawSphereDãŒå®šç¾©ã•れã¦ã„ãªã„
上ã®å•題ã¯ã‚りã¾ã›ã‚“ã‹ï¼Ÿã€€ãれã§ã‚‚解決ã—ãªã„å ´åˆã¯(const double *)ã§ã‚ャストã—ã¦ãã ã•ã„.
http://demura.net/9ode/3132.html より転載
ã§ã‚€
demuã•ã¾
返事ãŒã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚
å€ç²¾åº¦ã®å•題ãŒãªã„ã¯ãšã€‚ã¡ãªã¿ã«demo_basket.exe,arm1.exeãŒèµ·å‹•ã§ãã¾ã™ã€‚
ã™ã¿ã¾ã›ã‚“。 #define dsDrawSphere dsDrawSphereDã¯ç›´æŽ¥hello.cppã«å®šç¾©ã—ã¾ã™ã‹ï¼Ÿ
ãªãŠã“ã®ã‚ˆã†ã«dsDrawSphereD((const double *)pos,(const double *)R,r)ã‚ャストã—ãŸã‚‰build時ã«ã‚¨ãƒ©ãƒ¼ãŒãªããªã£ãŸä½†ã—debug時ã«ODE Message 2:inertia must be positive definite (c:\ode-0.11.1\ode\src\mass.cpp)ã®ã‚¨ãƒ©ãƒ¼ã‚’発生ã—ã¾ã—ãŸã€‚ã¡ãªã¿ã«C:\ode-0.11.1\roboSimu\srcã«hello.cpp hello.vcprojを使ã†ã¨ãã«build debugeå•題ãŒã‚りã¾ã›ã‚“。hello.cppä¸ã«dRealã¯è‡ªå‹•ã«doubleã‚’è˜åˆ¥ã•れã¾ã—ãŸã€‚(common.hã«typedef double dReal)。何ã§visual c++2008ã§æ–°ã—ã„projectを作ã£ã¦C:\ode-0.11.1\roboSimu\srcã«hello.cpp hello.vcprojã¨åŒã˜ãªhello.cppã‚’è¿½åŠ ã—ãŸinclude file directoryã¨lib name,lib file directory,drawstuff textureã‚’è¨å®šã—ãŸã€€ã‚¨ãƒ©ãƒ¼ã‚’出ã¾ã—ãŸã€‚よãã‚ã‹ã‚‰ãªã„ã§ã™ã€‚
よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚
[...] Windows+Visual C++ã¯ã“ã®ãƒšãƒ¼ã‚¸ [...]
B. 「odeã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã€ã®æ‰‹é †5ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ—ãƒãƒ³ãƒ—トを使用ã—例ã«å¾“ã£ã¦
æ–‡å—を打ã¡è¾¼ã‚“ã ã¨ã“ã‚〒C:\ode-0.11.1\build’ã¯å†…部コマンドã¾ãŸã¯å¤–部コマンド
æ“作å¯èƒ½ãªãƒ—ãƒã‚°ãƒ©ãƒ ã¾ãŸã¯ãƒãƒƒãƒã€€ãƒ•ァイルã¨ã—ã¦èªè˜ã•れã¦ã„ã¾ã›ã‚“.ã¨è¡¨ç¤ºã•れã¦ã—ã¾ã„ã¾ã—ãŸã€‚
ã“ã®ã‚¨ãƒ©ãƒ¼ã«å¯¾ã™ã‚‹å¯¾å‡¦æ³•ãŒã‚ã‹ã‚Šã¾ã›ã‚“。ã©ã†ã™ã‚Œã°ã‚ˆã„ã®ã§ã—ょã†ã‹ã€‚æ•™ãˆã¦ãã ã•ã„。
sunlightã•ん,
é…ããªã‚Šã™ã¿ã¾ã›ã‚“.
コマンドプãƒãƒ³ãƒ—トã§ä»¥ä¸‹ã®ã‚ˆã†ã«å…¥åŠ›ã•れãŸã§ã—ょã†ã‹ï¼Ÿã€€ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’見るé™ã‚Šcdコマンドを打ã¡å¿˜ã‚Œã¦ã„るよã†ã«æ€ãˆã¾ã™ï¼Ž
cd スペース C:\ode-0.11.1\build リターン
ãれã§ã‚‚,ã ã‚ãªå ´åˆã¯ï¼ŒcdコマンドãŒä½¿ãˆã‚‹ã‹è©¦ã—ã¦ãã ã•ã„.
ã§ã‚€
cdコマンドã®å…¥åŠ›ã‚’å¿˜ã‚Œã¦ã„ãŸã‚ˆã†ã§ã™ã€‚
解決ã—ã¾ã—ãŸã€ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚
roboSimu090614をビルドã—ã¦ã¿ãŸã‚‰ã€â€c1xx : fatal error C1083: ソース ファイルを開ã‘ã¾ã›ã‚“。’..\..\roboSimu\src\hello.cpp’: No such file or directoryâ€ã¨ãƒ•ァイルã¯ã‚ã‚‹ã®ã«è¨€ã£ã¦æ¥ã¦ãƒ“ルドãŒé€šã‚Šã¾ã›ã‚“。(全ã¦ã§ã™ï¼‰ä½•ã§ã§ã™ã‹ï¼Ÿå¯¾å‡¦æ³•ã¯ã‚りã¾ã™ã‹ï¼Ÿ
demuã•ん ã¯ã˜ã‚ã¾ã—ã¦
ODEを使ã„å§‹ã‚ãŸpikaã¨ã„ã†ã‚‚ã®ã§ã™ã€‚
windows vistaã§ODE 0.11.1を使ã£ã¦ã„ã¾ã™ã€‚
roboSimuをソリューションã®ãƒ“ルドã—ã¦
ã„ã–出æ¥ãŸå®Ÿè¡Œãƒ•ァイルを実行ã™ã‚‹ã¨
出ã¦ãるウィンドウãŒçœŸã£ç™½ã§
シミュレーションã®çжæ³ãŒã‚ã‹ã‚Šã¾ã›ã‚“。
実行ã§ãã€ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚‚出ãªã„ã®ã§ã™ãŒãƒ»ãƒ»ãƒ»
計算ã¯ã•れã¦ã„ã‚‹ã¿ãŸã„ã§ã™ã€‚
åŽŸå› ã¯ãªã‚“ã§ã—ょã†ã‹ï¼Ÿ
ãŠé¡˜ã„ã—ã¾ã™
アイアンホースã§ã™ã€‚
ビルド(ライブラリã®ä½œæˆï¼‰ã‚’実行ã—ãŸã‚‰ã‚³ãƒ³ãƒ‘イルã§ãã¾ã—ãŸã€‚
ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸã€‚
demuã•ã‚“
ç§ã®ç¢ºèªä¸è¶³ã§å¤§å¤‰ç”³ã—訳ãªã„ã®ã§ã™ãŒï¼Œ
DebugLibãŒDebugDLLã«ãªã£ã¦ã—ã¾ã£ã¦ã„ãŸã‚ˆã†ã§ã™ï¼Ž
ãれã§ã“れã¾ã§ã®ã‚ˆã†ãªã‚¨ãƒ©ãƒ¼ã¯æ¶ˆãˆãŸã®ã§ã™ãŒï¼Œ
コンパイルã®éš›ä»¥ä¸‹ã®ã‚ˆã†ãªã‚¨ãƒ©ãƒ¼ãŒï¼“ã¤ã ã‘出ã¾ã™ï¼Ž
5>c:\ode-0.11.1\robosimu\src\sensor4.cpp(58) : error C2057: 定数å¼ãŒå¿…è¦ã§ã™ã€‚
5>c:\ode-0.11.1\robosimu\src\sensor4.cpp(58) : error C2466: サイズ㌠0 ã®é…列を割り当ã¦ã¾ãŸã¯å®£è¨€ã—よã†ã¨ã—ã¾ã—ãŸã€‚
5>c:\ode-0.11.1\robosimu\src\sensor4.cpp(58) : error C2133: ‘contact’ : サイズãŒä¸æ˜Žã§ã™ã€‚
ä¸€å¿œï¼Œå®Ÿè¡Œãƒ•ã‚¡ã‚¤ãƒ«ã¯æ£å¸¸ã«å‹•ã„ã¦ã„ã‚‹ã¨æ€ã‚れã¾ã™
(ãã¡ã‚“ã¨è©³ç´°ã¾ã§è¦‹ã¦ã„ãªã„ã®ã§æœ¬å½“ã«æ£å¸¸ã‹ã¯åˆ†ã‹ã‚Šã¾ã›ã‚“ãŒ).
ã¾ãŸè‡ªä½œãƒ—ãƒã‚°ãƒ©ãƒ ã®ãƒ“ルド法
* I. プãƒã‚¸ã‚§ã‚¯ãƒˆãƒ•ァイルを使ã‚ãªã„方法
を行ã£ã¦ã¿ãŸã®ã§ã™ãŒï¼Œä»–ã®æ–¹ã¨åŒæ§˜ã«
「LINK : fatal error LNK1104: ファイル ‘ode_doubled.lib’ ã‚’é–‹ãã“ã¨ãŒã§ãã¾ã›ã‚“。ã€
ã¨ã„ã†ã‚¨ãƒ©ãƒ¼ãŒå‡ºã¾ã™ï¼Ž
åˆã‚ã¾ã—ã¦ã€‚
ç§ã‚‚???ã•ã‚“ã¨åŒã˜ãªã®ã§ã™ãŒï¼Œã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ ãŒå‹•ãã¾ã›ã‚“.
c:\ode-0.11.1\lib\DebugDoubleLibã«ode_doubled.libã¨drawstuffd.libã¯ãã¡ã‚“ã¨ã‚りã¾ã™ã—,
Windowsã®ç’°å¢ƒå¤‰æ•°ã®å¤‰æ›´ã¯ã—ãŸã®ã§ã™ãŒï½¥ï½¥ï½¥
error LNK2019: 未解決ã®å¤–部シンボル _gluBuild2DMipmaps@28 ãŒé–¢æ•° “public: __thiscall Texture::Texture(char *)” (??0Texture@@QAE@PAD@Z) ã§å‚ç…§ã•れã¾ã—ãŸã€‚
1>..\..\lib\DebugDoubleLib\demo_boxstack.exe : fatal error LNK1120: 外部å‚ç…§ 1 ãŒæœªè§£æ±ºã§ã™ã€‚
ã¨ã„ã†ã‚¨ãƒ©ãƒ¼ãŒå‡ºã¦ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ ãŒã†ã”ãã¾ã›ã‚“・・・.
ã¡ãªã¿ã«ï¼Œï¼ï¼Žï¼™ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯å‹•ã„ã¦ã„ã¾ã™ï¼Ž
c:\ode-0.11.1\lib\DebugDoubleLibã«ode_doubled.libã¨drawstuffd.libãŒã‚りã¾ã™ã‹ï¼Ÿ
ãªã„å ´åˆã¯ï¼Œã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚’確èªã—ã¦å†ãƒ“ルドã—ã¦ãã ã•ã„.
ã§ã‚€
è¿½åŠ ã§ã™ï¼Ž
Windowsã®ç’°å¢ƒå¤‰æ•°ç‰ã¯å¤‰æ›´ã•れã¾ã—ãŸã‹ï¼Ÿ
ã§ã‚€
meruã•ん,
コメントã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼Ž
普段CodeBlocksã—ã‹ä½¿ã£ã¦ã„ãªã„ã®ã§åŠ©ã‹ã‚Šã¾ã™ï¼Ž
ODEã®ãƒ‡ãƒ¢ãƒ—ãƒã‚°ãƒ©ãƒ ã¯å‹•ãã¾ã™ã‹ï¼Ÿã€€
ãれã¨ã‚‚ODE本ã®ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ ã ã‘ã§ã—ょã†ã‹ï¼Ÿ
ã“ã®é•ã„ã¯å¤§ãã„ã®ã§ã”返事よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ï¼Ž
ã§ã‚€
demuã•ん,
デモプãƒã‚°ãƒ©ãƒ ã¯ã‚¨ãƒ©ãƒ¼ã‚‚ãªãå‹•ã„ã¦ã„ã¾ã™ï¼Ž
ODE本ã®ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ をコンパイルã™ã‚‹ã¨
上記ã®ã‚ˆã†ãªã‚¨ãƒ©ãƒ¼ãŒå‡ºã¾ã™ï¼Ž
ODE本ã®ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ roboSimu090614.zipã¨è‡ªä½œãƒ—ãƒã‚°ãƒ©ãƒ ã®ãƒ“ルド法ã®è¨˜äº‹(http://demura.net/9ode/4120.html)ã‚’æ›´æ–°ã—ã¾ã—ãŸï¼Žæ–°ã—ã„ã‚‚ã®ã‚’ãŠè©¦ã—ãã ã•ã„.
ã§ã‚€
meruã•ん,
一件è½ç€ãŠã‚ã§ã¨ã†ã”ã–ã„ã¾ã™ï¼Ž
ã“れã¯éžå¸¸ã«é‡è¦ãªã“ã¨ã§ã™ãŒï¼Œä½•をスペルミスã—ãŸã‹ã‚’æ•™ãˆã¦ãã ã•ã„.
スペルミスをã—ã‚„ã™ã„åŽŸå› ãŒãã“ã«ã¯ã‚ã‚‹ã¯ãšã§ã™ã‹ã‚‰ï¼Ž
よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ï¼Ž
ã§ã‚€
demuã•ã‚“
ä¸å¯§ã«å¯¾å¿œã—ã¦ãã ã•ã£ã¦æœ¬å½“ã«ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼Ž
å…¨ã¦ã‚’削除ã—ã¦ï¼Œã‚‚ã†1度一番最åˆã‹ã‚‰ã‚„り直ã—ã¦ã¿ãŸã®ã§ã™ãŒï¼Œ
ODE本ã®ã‚µãƒ³ãƒ—ルプãƒã‚°ãƒ©ãƒ ã¾ã§ã¯å‹•ãã®ã§ã™ãŒï¼Œ
自作プãƒã‚°ãƒ©ãƒ ã®ãƒ“ルドを行ã†ã¨ï¼Œã‚„ã¯ã‚Šä»¥å‰ã¨åŒæ§˜ã«
「LINK : fatal error LNK1104:ファイル ode_doubled.lib’ ã‚’é–‹ãã“ã¨ãŒã§ãã¾ã›ã‚“。ã€
ã¨å‡ºã¦ã—ã¾ã„ã¾ã™ï¼Ž
ãŸã ,今回環境変数ã®è¨å®šã«ã¤ã„ã¦æ›¸ã‹ã‚Œã¦ã„る所ãŒè¦‹ã¤ã‘られãªã‹ã£ãŸã®ã§ã™ãŒï¼Œ
今回ã¯ç’°å¢ƒå¤‰æ•°ã«ã¤ã„ã¦ã¯ã©ã®ã‚ˆã†ã«è¨å®šã™ã‚Œã°ã‚ˆã„ã®ã§ã—ょã†ã‹ï¼Ž
環境変数ã®è¨å®šã‚’http://demura.net/9ode/4120.htmlã«è¿½åŠ ã—ã¾ã—ãŸï¼ŽãŸã ã—,今回ã¯C:\ode-0.11.1\myprogフォルダã®ä¸ã«è‡ªä½œãƒ—ãƒã‚°ãƒ©ãƒ 用ã®ãƒ•ォルダを作り,ãã®ä¸ã«è‡ªä½œã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã¨ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãƒ•ァイルをãŠã‹ãªã‘れã°ãªã‚Šã¾ã›ã‚“.
ã¾ãŸï¼Œå†åº¦ç¢ºèªã§ã™ãŒï¼Œc:\ode-0.11.1\lib\DebugDoubleLib\ode_doubled.libã¯å˜åœ¨ã—ã¦ã„ã‚‹ã§ã—ょã†ã‹ï¼Ÿ
ã“れã§å‹•ã‹ãªã„ã¨ï¼Œã©ã“ã‹ã§ç°¡å˜ãªã‚¹ãƒšãƒ«ãƒŸã‚¹ãªã©ã‚’ã—ã¦ã„ã‚‹ã“ã¨ãらã„ã—ã‹åŽŸå› ãŒæ€ã„æµ®ã‹ã³ã¾ã›ã‚“.
ã§ã‚€
demuã•ã‚“
ã‚„ã£ã¨å‹•ãã¾ã—ãŸï¼Ž
åŽŸå› ã¯demuã•ã‚“ã®ãŠã£ã—ゃるã¨ãŠã‚Šã‚¹ãƒšãƒ«ãƒŸã‚¹ã§ã—ãŸï¼Ž
ã™ã¿ã¾ã›ã‚“ã§ã—ãŸï¼Ž
本当ã«ã‚りãŒã¨ã†ã”ã–ã„ã¾ã—ãŸï¼Ž
アイアンホースã•ん,
解決ã—ã¦è‰¯ã‹ã£ãŸã§ã™ã.
何ã‹ã‚ã£ãŸã‚‰ï¼Œã¾ãŸã‚³ãƒ¡ãƒ³ãƒˆãã ã•ã„.
ã§ã‚€
追伸
自分ã®ç’°å¢ƒã¯ode-0.11.1ã‚’Visual C++ 2008ã§ã™ã€‚