From c63e6520475227df1e8980dafe1052a4e6fcd94d Mon Sep 17 00:00:00 2001 From: matken11235 <26405363+matken11235@users.noreply.github.com> Date: Fri, 8 Mar 2019 01:30:52 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=E3=83=84=E3=83=BC=E3=83=AB:=20=E3=83=91?= =?UTF-8?q?=E3=83=83=E3=82=B1=E3=83=BC=E3=82=B8=E3=83=9E=E3=83=8D=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=83=A3=E3=81=AE=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/tools/package-manager.md | 93 +++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) diff --git a/docs/tools/package-manager.md b/docs/tools/package-manager.md index 3d7db61..87f8f87 100644 --- a/docs/tools/package-manager.md +++ b/docs/tools/package-manager.md @@ -1 +1,94 @@ # パッケージマネージャ +## 現存するC++のパッケージマネージャ + +以下に示すのがC++のパッケージマネージャの中でも、ある程度規模の大きいものからそれ以上のものです。 +それぞれインタフェースがかなり違うので、特に他の言語でパッケージマネージャを使用した経験がある人は違和感を感じるものもあると思います。 + +| | 開発言語 | ビルドシステム | マルチプラットフォーム | +| ------------------------------------------- | ------- | ----------- | ------------------ | +| [poac](https://github.com/poacpm) | C++ | :fa-check: | :fa-check: | +| [conan](https://conan.io) | Python | | :fa-check: | +| [vcpkg](https://github.com/Microsoft/vcpkg) | CMake | | :fa-check: | +| [buckaroo](https://buckaroo.pm) | F# | :fa-check: | :fa-check: | + + +## 使い方 +それぞれのパッケージマネージャでREADME等に書かれている基本的な使い方を試してみます。 + +#### poac +> https://docs.poac.io/ja/getting-started/hello-world.html + +```bash +$ poac new hello + +Your "hello" project was created successfully. + + +Go into your project by running: + $ cd hello + +Start your project with: + $ poac run + +$ cd hello +$ poac run +Compiled: Output to `_build/bin/hello` +Running: `_build/bin/hello` +Hello, world! +``` + + +#### conan +> Getting Startedが長すぎたので、ファイルの内容は省略した上で、なるべく短く単純な方法を作成しました。 +本家の方法が気になる方は以下を参照して下さい。 +https://docs.conan.io/en/latest/getting_started.html + +```bash +$ mkdir hello +$ cd hello +$ nvim conanfile.txt +$ conan remote add conan-transit https://api.bintray.com/conan/conan/conan-transit +$ conan install . --build +$ nvim main.cpp +$ nvim CMakeLists.txt +$ cmake . +$ cmake --build . +$ ./bin/greet +Hello, world! +``` + + +#### vcpkg +> conanと同じくファイルの内容は省略した上で、なるべく短く単純な方法を作成しました。 +https://github.com/Microsoft/vcpkg/blob/master/docs/examples/installing-and-using-packages.md + +```bash +$ ./vcpkg integrate install +$ ./vcpkg install poco +$ nvim main.cpp +$ nvim CMakeLists.txt +$ mkdir build +$ cd build +$ cmake .. +$ cmake --build . +$ ./main +``` + + +#### buckaroo +> 注: 以下のコマンドを筆者が試したところ、かなり時間がかかったので試す際は注意してください。 +また、以下の公式ドキュメントを参考にしましたが最後のコマンドが動作しませんでした。 +https://github.com/LoopPerfect/buckaroo#readme + +```bash +$ mkdir hello +$ cd hello +$ buckaroo init +$ buckaroo add github.com/buckaroo-pm/boost-thread@branch=master +$ buck run :my-app # note: this command does not work +``` + + +--- + +> C++のパッケージマネージャが他にもあるという場合や、その他間違いがあれば、[@matken11235](https://twitter.com/matken11235) までご連絡いただけると幸いです。 From bace72d2ed7ff0a3031461440f1f859395df422c Mon Sep 17 00:00:00 2001 From: matken11235 <26405363+matken11235@users.noreply.github.com> Date: Fri, 8 Mar 2019 01:33:15 +0900 Subject: [PATCH 2/3] Add to page tree --- mkdocs.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mkdocs.yml b/mkdocs.yml index 33b5e84..21611f4 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -19,10 +19,10 @@ theme: language: 'ja' favicon: 'assets/images/logo.png' logo: - icon: 'donut_small' + icon: 'donut_small' palette: primary: 'teal' - accent: 'teal' + accent: 'teal' feature: tabs: true extra: @@ -54,3 +54,4 @@ nav: - コンテナ: libraries/containers.md - ツール: - オンラインコンパイラ: tools/onlinecompilers.md + - パッケージマネージャ: tools/package-manager.md From 8f3b2999afa3624dcb7319919d56beaab78d27a2 Mon Sep 17 00:00:00 2001 From: Ryo Suzuki Date: Fri, 8 Mar 2019 12:55:29 +0900 Subject: [PATCH 3/3] =?UTF-8?q?=E3=83=91=E3=83=83=E3=82=B1=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=83=9E=E3=83=8D=E3=83=BC=E3=82=B8=E3=83=A3=E8=A8=98?= =?UTF-8?q?=E4=BA=8B=E3=80=81=E3=81=9F=E3=81=9F=E3=81=8D=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/tools/package-manager.md | 106 ++++++++++++---------------------- 1 file changed, 36 insertions(+), 70 deletions(-) diff --git a/docs/tools/package-manager.md b/docs/tools/package-manager.md index 87f8f87..a2d2185 100644 --- a/docs/tools/package-manager.md +++ b/docs/tools/package-manager.md @@ -1,94 +1,60 @@ # パッケージマネージャ -## 現存するC++のパッケージマネージャ -以下に示すのがC++のパッケージマネージャの中でも、ある程度規模の大きいものからそれ以上のものです。 -それぞれインタフェースがかなり違うので、特に他の言語でパッケージマネージャを使用した経験がある人は違和感を感じるものもあると思います。 +## パッケージマネージャの比較 -| | 開発言語 | ビルドシステム | マルチプラットフォーム | -| ------------------------------------------- | ------- | ----------- | ------------------ | -| [poac](https://github.com/poacpm) | C++ | :fa-check: | :fa-check: | -| [conan](https://conan.io) | Python | | :fa-check: | -| [vcpkg](https://github.com/Microsoft/vcpkg) | CMake | | :fa-check: | -| [buckaroo](https://buckaroo.pm) | F# | :fa-check: | :fa-check: | +| | 対応プラットフォーム | +| -------------------------------------------- | --------------------- | +| [Vcpkg](https://github.com/Microsoft/vcpkg) | Windows, macOS, Linux | +| [Conan](https://conan.io) | Windows, macOS, Linux | +| [Hunter](https://docs.hunter.sh/) | Windows, macOS, Linux | +| [Buckaroo](https://buckaroo.pm) | Windows, macOS, Linux | +| [poac](https://poac.pm/) | macOS, Linux | + + -## 使い方 -それぞれのパッケージマネージャでREADME等に書かれている基本的な使い方を試してみます。 +