benikabocha / saba

OpenGL Viewer (OBJ PMD PMX)
MIT License
442 stars 60 forks source link

CMAKEでのvisualstudio2015作成でのエラー #4

Closed kaisereagle closed 7 years ago

kaisereagle commented 7 years ago

はじめまして こちら確認させていただきましたところReame.jp.MEでの cmake -G "Visual Studio 14 2015 Win64" ^ -D SABA_BULLET_ROOT=<bullet のインストールディレクトリ> ^ -D SABA_GLFW_ROOT=<GLFW のインストールディレクトリ> ^ ..


を実行したところ
Does not match the generator used previously: Visual Studio 15 2017 Win64
がでてしまい2017でしか動かないようですが
こちら2015ではできないのでしょうか?
benikabocha commented 7 years ago

2017 用のビルドディレクトリに、 2015 用のものを生成しようとしていませんでしょうか? CMake はすでにある generator-name と違うものがあると、そのようなエラーを出力します。

一度、build ディレクトリを空にするか、 build_vs2015 のように別ディレクトリを作成して試してください。

kaisereagle commented 7 years ago

お早いご返答ありがとうございます! buildディレクトリを空にしてみたところ下記エラーになりました CMake Error at D:/dev/cmake-3.8.0-win64-x64/cmake-3.8.0-win64-x64/share/cmake-3.8/Modules/FindPackageHandleStandardArgs.cmake:137 (message): Could NOT find Bullet (missing: BULLET_DYNAMICS_LIBRARY BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY BULLET_SOFTBODY_LIBRARY) Call Stack (most recent call first): D:/dev/cmake-3.8.0-win64-x64/cmake-3.8.0-win64-x64/share/cmake-3.8/Modules/FindPackageHandleStandardArgs.cmake:377 (_FPHSA_FAILURE_MESSAGE) D:/dev/cmake-3.8.0-win64-x64/cmake-3.8.0-win64-x64/share/cmake-3.8/Modules/FindBullet.cmake:82 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) CMakeLists.txt:19 (find_package)

cmakeのバージョンは3.8.0-win64 bulletのバージョンは2.86.1をgitでcloneしております bulletはcmakeにてincludeディレクトリとlibディレクトリは出来上がっていることを確認しています エラーコードを見る限りライブラリがミスってるとのことですがそもそもBULLETのrootは上記ふぉるだだけでよろしいのでしょうか? なんども申し訳ありません

kaisereagle commented 7 years ago

サイトを見させていただいたところcmake3.7とのことでしたので再度3.7.2にてビルドしましたが同様のエラーが出ております。 申し訳ありません

benikabocha commented 7 years ago

ディレクトリ構成は、こんな感じでしょうか?

d:\
  + dev\
    + library\
       + bullet3\    <---- ここを指定します
          + include\
          + lib\

このようなディレクトリ構成の場合、 -D SABA_BULLET_ROOT="d:\dev\library\bullet3" と設定します。

一応、こちらではVisual Studio 2017 と 2015、CMake も 3.8.0 で生成できることを確認はできております。

以下を確認させてください。

kaisereagle commented 7 years ago

ありがとうございます! 無事cmakeにてプロジェクトが作成されました! 原因は cmake --build . --config Release --target ALL_BUILD cmake --build . --config Release --target INSTALL にてreleaseのlibがインストールディレクトリにコピーされていなかったもようで手動にてコピーしたところ無事プロジェクトができました! お手数おかけいたしました ※上記とは関係ありませんがCMAKEにて作成したビルドがVS2015だとプラットフォームビルドがv141になってしまうためSPいれないとビルドされない模様です。ご参考までに

benikabocha commented 7 years ago

プロジェクトが作成できてよかったです。

プラットフォームビルドの件、ありがとうございます。 説明に追加しておきます。