English version is here

インストール

簡単にインストールする

curl -fsSL https://sh.poac.pm | bash

お使いのPCのOSがmacOSの時、インストーラは Homebrew を使用します

手動でインストールする (ビルド)

poac はビルドするために以下のツールとパッケージが必要です:

  • cmake: 3.0 もしくはそれ以上
  • boost: 1.66.0 もしくはそれ以上
  • openssl: できるだけ最新のもの
  • yaml-cpp: 0.6.0 もしくはそれ以上
$ git clone https://github.com/poacpm/poac.git
$ cd poac
$ mkdir build && cd $_
$ cmake ..
$ make
$ make install

サポートしているOS

  • Linux
    • x86_64-unknown-linux-gnu
    • mips-unknown-linux-gnu (next release)
    • powerpc-unknown-linux-gnu (next release)
    • powerpc64-unknown-linux-gnu (next release)
    • powerpc64le-unknown-linux-gnu (next release)
  • macOS
    • macOS Sierra
    • macOS High Sierra
    • macOS Mojave
  • Windows
    • Visual Studio 2017 x86
    • Visual Studio 2017 x64
    • MinGW-w64 (next release)
    • Cygwin (next release)
    • Cygwin64 (next release)

アプリケーションの配布について

Linux

Linuxでは、それぞれのアーキテクチャ向けにStatic Linkされたビルド済みバイナリを、GitHub Releasesで配布しています。

macOS

macOS向けでは、Homebrew Tapsを利用して配布しています。

そのため、brew install poacpm/tap/poacコマンドでもインストール可能です。

Homebrew Tapsを未だに利用している理由

Poacは、C++17の標準ライブラリであるvariantに依存しています。 ところが、macOS High Sierra以前では、variantライブラリの実装があるにも拘らず、std::visitが実装されていません。 実際にコンパイルしようとすると、以下のエラーが表示されます。

Call to unavailable function 'visit': introduced in macOS 10.14

そのため、PoacはHomebrewのパッケージである、llvm@7に依存し、HomebrewのClangに迂回させることでPoacをビルドしています。

macOS Mojave以降はこの作業が必要無いため、Apple Clangを用いてビルドしています。

本家にPull Requestを出しましたが、llvmに依存するパッケージは本家に入れることができませんでした。 そのため、Homebrew Tapsを利用しています。

HomebrewがmacOS High Sierra以前をサポート対象外にするタイミングで本家にPull Requestを出す予定です。 (その前にHomebrewにPoacと同じ名前の別のパッケージが取り込まれた場合、Tapsを利用し続けることになります。)

本家に取り込まれた場合

macOS 以外 のOS向けには、ビルド済みバイナリを配布しています。 macOS向けには、Homebrewに完全に依存しています。 そのため、Tapsを利用している現状では、インストール毎にビルドが行われます。

本家に取り込まれた時点で、Bottlesが利用できるようになるため、インストール毎にビルドが行われることはありません。 LinuxやWindowsでの配布と違い、本家に取り込まれたかどうかに関わらず、GitHub ReleasesでmacOS向けのビルド済みバイナリを配布する予定はありません。

HomebrewでインストールされるPoacは、全ての依存ライブラリにDynamic Linkします。 本家に取り込まれた場合、brew install poacコマンドでインストールできるようになります。

Windows

Windowsでは、OpenSSLのみDynamic Linkしたバイナリを配布します。 そのため、OpenSSLのdllのみ手動でインストールする必要があります。 現在、sh.poac.pmのスクリプトを使用してインストールする方法はサポートしていません。 GitHub Releasesから、直接exeファイルをダウンロードしてください。

results matching ""

    No results matching ""