質問: 過去の質問に対し頂いた回答について、調査中に挫折しました。 どなたか助け船頂けますと幸いです。 ロジック内の関数や関数内で使用しているグローバルなどの解析を行うプログラムを作成したいのですが。。。 こちらの質問の回答にある、clangコンパイラというものを使いたくて、こちらの記事にある事をやってみたいと思っています。 ClangのlibToolingでASTをダンプするツールを作ってみた https://qiita.com/Chironian/items/6021d35bf2750341d80c この記事に従って、clangをダウンロードしたのですが、ビルドというのがよくわかりません。 この記事にあるようにビルドしてみたのですが、それからどうしたらいいのやらという感じです。 CMakeでビルドするという事でしょうか? 【2017/12/31 補足】 つまってわからないところはこの部分です。 記事の中のこの部分です。 > > 2.2 ここを参考にしつつ、clang / LLVMをビルド > > 手順としては下記となります。 > > 1.MinGWとQtCreatorにパスを通しておく。 > > 2.ビルド用フォルダを作り、そこへ移動する > > 3.構成し、ビルドし、インストールする > > > あ、これを書いていて思ったのですが、MinGWとQTcreaterというものがわかっていませんでした! その下にある、 > > rem デバッグ・ビルドする > > mkdir build-llvm-debug > > cd build-llvm-debug > > CMake -G "MinGW Makefiles" -DCMAKE_C_FLAGS:STRING="-static -static-libgcc -static-libstdc++" -DCMAKE_CXX_FLAGS:STRING="-static -static-libgcc -static-libstdc++" -DCMAKE_CXX_FLAGS=-Og -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_INSTALL_PREFIX:PATH="../install/debug" ..\llvm\ > > jom > > jom install > > > rem リリース・ビルドする > > mkdir build-llvm-release > > cd build-llvm-release > > CMake -G "MinGW Makefiles" -DCMAKE_C_FLAGS:STRING="-static -static-libgcc -static-libstdc++" -DCMAKE_CXX_FLAGS:STRING="-static -static-libgcc -static-libstdc++" -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH="../install/release" ..\llvm\ > > jom > > jom install > > > の部分ですが、実行したのですが、うまくいったのかいかないのかがわからないんです。 フォルダ等はできたのですが、記事にあるようにビルドに何十分もかかるようなものではなく、一瞬で終わるので、多分失敗なのかなと。。。 MInGWとQTcreaterにパスを通すって、一体どうしたらいいのでしょう?? パスが通っているかを確認方法はどんな風にすればいいのでしょう? とりあえず、コードをVisual Studioに張り付けてみると、こんな感じでごたごたエラーが出ます。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/60786403f7184f6fd2c6b936c5913b39.jpeg) いろいろ書かせて頂きましたが、まずは、MInGWとQTcreaterにパスが通っているかどうかの確認方法と、通って田舎た場合にどうやってパスを通したらいいかが知りたいです。 その上で、ビルドをきちんとやってみたいと思いますが。。。 【2017/12/31 補足】 Visual Studioでビルドを試みましたが、うまくできません。 メッセージを見ると、以下のようなワーニングが出ます。 > > -- Warnig: Did not find file Compiler/MSVC-ASM > > > コンパイラーへのパスが通っていないとか、そういう事なんでしょうか?? ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/c9f81ca69dd5682031abd3fc10c1cc15.jpeg) 【2018/1/3 追記】 Visual Studio 2015 Update 3を適用しましたが、エラーの内容は変わりませんでした。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/74ff2169be27a0a3dc690ddfb150a5c1.jpeg) ↑Update 3適用されてますよね? また、エラー内容をよく見ると、Update 3の適用はあくまでもWarningで、明確なエラーは、「プロジェクトファイルが存在しません。」と出ています。 > > C:\FOSS\LLVM-clang\build-msvc2015>cmake --build . --config Release > > Microsoft (R) Build Engine バージョン 14.0.25420.1 > > Copyright (C) Microsoft Corporation. All rights reserved. > > > MSBUILD : error MSB1009: プロジェクト ファイルが存在しません。 > > スイッチ: ALL_BUILD.vcxproj > > > エラーメッセージを見ますと、「ALL_BUILD.vcxproj」というプロジェクトファイルが無いと言っているようです。 これは、svnかどこかにアップされてて、コピーし忘れているという事でしょうか? ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/d8e0ed71ab5c0c0e7bfc703a56889357.jpeg) 【2018年1月7日追記】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/4baf4e026a9692ffbf09a0ba97d00bcd.jpeg) フォルダとしては、これだけ出来ました。 ![![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/9fd08999b3ae7962b611cd344c63ff47.jpeg)説明] 【2018/1/8 追記】 example.slnをビルドする際に出るエラー。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/43613ba4dbd33fc1e0cba6cf22079574.jpeg) InclusionDirectiveという関数について、 > > 'override'で宣言されたメンバー関数が、基底クラスメンバーをうまくオーバーライドしません。 > > > とあります。 【2018/1/8 追記】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/9a6c9e53e9431b5e291223ad0f17929c.jpeg) 4件のリンクエラーが出ています。 【2018/1/11 追記】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/03cb626c43bb0f064bce1a3d269f4cb6.jpeg) 【2018/1/12 追記】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/c1a9ba11677e6ecbdbcb32b90a7cd1ed.jpeg) 【2018/1/14 追記】 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/bbc8879299210f7617edcb99a256ac51.jpeg)
回答: 外してたらごめんですが・・・ clangを使いたいだけならLLVM DownloadPageから各OS毎のバイナリがダウンロードできますが?