azure-c-shared-utility
Azure C SDKの土台となる、azure-c-shared-utilityをビルドしてみました。
リポジトリをclone
Setupのとおり、--recursiveオプションを付けてgit cloneします。
C:\Users\takashi\Documents\github>git clone --recursive https://github.com/Azure/azure-c-shared-utility.git Cloning into 'azure-c-shared-utility'... remote: Counting objects: 15474, done. ... Submodule path 'testtools/umock-c/deps/testrunner': checked out 'f73e0a91e295fb64b94d72aaf16fa54d3079be22' C:\Users\takashi\Documents\github>
何事も無く成功。約23MB。
参照しているサブモジュールは5つでした。
Submodule 'testtools/ctest' (https://github.com/Azure/azure-ctest.git) registered for path 'testtools/ctest' Submodule 'testtools/testrunner' (https://github.com/Azure/azure-c-testrunnerswitcher.git) registered for path 'testtools/testrunner' Submodule 'testtools/umock-c' (https://github.com/Azure/umock-c.git) registered for path 'testtools/umock-c' Submodule 'deps/azure-ctest' (https://github.com/Azure/azure-ctest.git) registered for path 'testtools/umock-c/deps/ctest' Submodule 'deps/testrunner' (https://github.com/Azure/azure-c-testrunnerswitcher.git) registered for path 'testtools/umock-c/deps/testrunner'
ビルド準備
cmakeを実行します。
C:\Users\takashi\Documents\github>cd azure-c-shared-utility C:\Users\takashi\Documents\github\azure-c-shared-utility>cmake .. CMake Error: The source directory "C:/Users/takashi/Documents/github" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI. C:\Users\takashi\Documents\github\azure-c-shared-utility>
エラーになりました。CMakeLists.txtが無いって。そりゃそうですよ、一つ上の階層はcloneしていませんから。ドキュメントが間違っているのかな。
気を取り直して、cloneしたフォルダでcmakeを実行します。
C:\Users\takashi\Documents\github\azure-c-shared-utility>cmake . -- Building for: Visual Studio 15 2017 -- The C compiler identification is MSVC 19.12.25831.0 -- The CXX compiler identification is MSVC 19.12.25831.0 -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x86/cl.exe -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x86/cl.exe -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x86/cl.exe -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x86/cl.exe -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Looking for include file stdint.h -- Looking for include file stdint.h - found -- Looking for include file stdbool.h -- Looking for include file stdbool.h - found -- target architecture: x86 -- Performing Test CXX_FLAG_CXX11 -- Performing Test CXX_FLAG_CXX11 - Success -- Configuring done -- Generating done -- Build files have been written to: C:/Users/takashi/Documents/github/azure-c-shared-utility C:\Users\takashi\Documents\github\azure-c-shared-utility>
Visual Studio 15 2017向けのものをMSVCでコンパイルするよう準備したようです。
どこに何が出来上がっているのか分からないのですが、トップフォルダにこれらのファイルが出来上がっていました。
ビルド
cmake --buildを実行します。
C:\Users\takashi\Documents\github\azure-c-shared-utility>cmake --build . .NET Framework 向け Microsoft (R) Build Engine バージョン 15.5.180.51428 Copyright (C) Microsoft Corporation.All rights reserved. 2017/12/24 12:09:57 にビルドを開始しました。 ノード 1 上のプロジェクト "C:\Users\takashi\Documents\github\azure-c-shared-utility\ALL_BUILD.vcxproj" (既定のターゲット)。 ... ビルドに成功しました。 0 個の警告 0 エラー 経過時間 00:00:13.54 C:\Users\takashi\Documents\github\azure-c-shared-utility>
Debugフォルダのaziotsharedutil.libがビルド結果のようです。