問題タブ [cpack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2522 参照

background-image - CMake を使用して DMG インストールの背景画像を構成できない

Mac OS X 10.7.5 で CMake 2.8.10.2 を使用しています。

空のウィンドウを作成する Xcode を使用して単純なアプリケーションを構築するように CMake を構成しました。次に、以下を使用して背景画像を指定するプログラムの DMG インストールをビルドするように CMake を構成しようとしました。

set(CPACK_DMG_BACKGROUND_IMAGE /path/to/image)

カスタム .DS_Store を使用して、ウィンドウのサイズとアイコンの配置を設定します。

set(CPACK_DMG_DS_STORE /path/to/DS_Store ファイル)

Xcode はアプリケーションを正常にビルドし、ディスク イメージを作成します。画像をマウントすると、正しいサイズとアイコンの配置が表示されますが、背景は指定された背景画像ではなく常に白に設定されます。

ディスク イメージで背景を適切に表示するには何が必要ですか?

0 投票する
1 に答える
10125 参照

cmake - ファイルをコピーして CPack アーカイブに含める

CMakeそのため、実行時にファイル (およびディレクトリ) をコピーする方法は多数あります ( file(COPY ...)configure_file(...)およびadd_custom_command()すべての作業*) が、ソースからビルド ディレクトリにコピーされたファイルまたはディレクトリを、生成されたアーカイブに表示する方法をまだ見つけていません。 CPackによる。私は、このSOの答えはそれを修正すると思います.実際にはコピーをターゲットにリンクし、インストールがリンクされます:

file()一方、コマンドとconfigure_file()コマンドをターゲットに追加する明らかな方法がないことは認識していました。しかし、これはうまくいきませんでした。では、以下のような単純な CMakeLists.txt が与えられた場合、すべてのファイル (exmapleディレクトリを含む) をアーカイブに表示するにはどうすればよいでしょうか?!

* これら 3 つの方法のうちどれが実際に (最も?) 正しいかはまだわかっていません。そのため、これに関するアドバイスも大歓迎です。

0 投票する
2 に答える
2065 参照

boost - Debian パッケージで複数の Boost バージョンをサポートする

私のプロジェクト用に debian パッケージを作成しようとしていますが、ブースト バージョンのサポートに関する問題が発生しています。

確かにこの質問を見てきました。似ていますが、提供されているソリューション (Build-Depends) は、バイナリ インストーラーを作成しているため、実際には適用できません。

基本的に、インストールしたライブラリと実行可能ファイルは、シンボリック リンク ライブラリ libboost_(component).so ではなく、常に libboost_(component).so.1.46 にリンクします。私のdebianインストーラーを、私の正確なブーストバージョンを持つ人々だけが使用できるようにします。CPack を使用して debian パッケージを作成しています。依存関係の行は次のようになります。

上記のプラットフォームまたはそのプラットフォームのブースト バージョンで、プラットフォームごとに個別のインストーラーをビルドする必要がありますか?

0 投票する
3 に答える
9773 参照

windows - cmake で .msi インストーラを生成するには?

.msiでインストーラーを生成しようとしていcmakeます。.dllでいくつかの構成を使用して.libファイルを生成できますCMakeLists.txt。インストーラーCMakeLists.txtを生成する例を提供してください。.msiコマンド プロンプトで使用する必要があるコマンドは何ですか?

これまでに使用しているコマンドは次のとおりです。

次の構成を使用して、.dllおよび.libファイルを生成しました。

これが私のものCMakeLists.txtです:

0 投票する
1 に答える
2482 参照

c++ - cpack で正しいスタート メニューのショートカットを生成する方法

cmake と cpack を使用して、Windows でいくつかのプログラムのインストーラーを作成したいと考えています。インストールするプログラムを選択できるようにしたいのですが、選択したプログラムがショートカットとしてスタート メニューに表示されます。これは簡単な試みです。プログラムごとに 1 つのコンポーネントを作成しましたが、スタート メニュー変数を生成する方法がわかりません。インストールするように選択されていない場合でも、すべてのプログラムが常にメニューに表示されるようになりました。まず、インストールする簡単なプログラムです。

ここに CMakeLists.txt ファイルがあります

問題は、インストールで選択されたプログラムに応じてスタート メニューのショートカットを生成することです。簡単だと思っていましたが、そうではないようです。これを行うことは可能ですか?

更新: http://www.cmake.org/Wiki/CMake:Component_Install_With_CPackのどの例でもスタート メニューのショートカットが生成されていないことがわかりました。

0 投票する
0 に答える
369 参照

c++ - CMake / CPack: MacOS でのサードパーティ ライブラリの場所

マルチプラットフォームの C++ GUI プロジェクトに取り組んでいます。boost一部のサードパーティ ライブラリ ( 、など)に依存しておりfftw、これらも配信およびインストールされるため、ユーザーが追加のコンポーネントをダウンロードする必要はありません。

現在、MacOS ビルド用にアプリ バンドルが生成されています ( MyProject.app)。PackageMaker CPackパッケージ ジェネレーターを使用しています。必要なすべてのサードパーティの依存関係が の下にインストールされMyProject.app/Contents/Frameworksます。

最近、インストーラーに含めたい一連のコマンド ライン ツールが完成しました。そのため、新しいコマンド ライン ユーティリティを含むバンドルをMyProject.appフォルダー (たとえば ) にインストールします。Tools

さらに興味深いことに、アプリケーション バンドルはいくつかの gui およびコア コンポーネントで構成され、各コンポーネントとツールを異なるCMakeプロジェクトとして表します (つまり、次のCMakeコマンドを使用します: project(gui_components)project(core_components)およびproject(tools))。私たちのツールはコア コンポーネントに依存していますが、GUI コンポーネントには依存していません。

基本的に、次のフォルダー構造が必要です。

CMake/CPackにサードパーティの依存関係 (この例ではlibboost_regexlibfftw) をlibフォルダーにインストールするように指示するにはどうすればよいですか? それらはまだ の下にインストールされていMyProject.app/Contents/Frameworksます。私たちはすでに独自のフォルダをフォルダにインストールすることができlibgui_componentsましlibcore_componentslib