9

ブーストを使用するのは初めてで、ブーストを使用するときにアプリケーションを配布する方法に関するドキュメントがどこにも見つからないようです?

ライブラリの多くは共有ライブラリです。ユーザーがブーストをインストールすることを期待していません。単一のライブラリ (正規表現) しか使用していないため、静的でコンパイルせずに正規表現ライブラリをアプリケーションにパッケージ化する簡単な方法はありますか?バージョン?

4

1 に答える 1

8

Linux

バイナリ ディストリビューションの場合、依存関係を処理するディストリビューションのパッケージ管理を使用することをお勧めします。一部の商用アプリはバイナリ BLOB を使用するだけであり、自分でブーストのバージョンをインストールする必要があります。

Linux では、ライブラリを見つけるのが少し難しくなります。共有オブジェクトがコンパイル時にリンクされている場合 (実行時に dlopen を使用してロードするのとは対照的に)、共有オブジェクトを現在のディレクトリから自動的にロードすることはありません。

LD_LIBRARY_PATH 環境変数を使用するか、rpathを使用する必要があります。どちらにも欠点があります。

ウィンドウズ

dll を含める方法はありません。通常のアプローチは、すべてをディレクトリに入れて圧縮することです。

両方

ソースからビルドするにはブースト ソースが必要なので、ライブラリを含める必要はありません。

とにかく、ブーストのほとんどのライブラリはヘッダーのみであり、regexp はそれらの 1 つではありません。このモジュールの dll を含めるだけで十分です。Linux では、次のコマンドを使用して、バイナリがコンパイルされている共有ライブラリを確認できます。

ldd binary
于 2009-09-11T17:33:38.673 に答える