問題タブ [build-system]
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.
cruisecontrol.net - CruiseControl.Net から Atlassian Bamboo に移行するにはどうすればよいですか?
自社開発の CI/CD システムから Bamboo + Jira に移行することを考えています。私たちは .Net ショップであるため、ツールは msbuild/msdeploy 実行可能ファイルの実行と、.bat および .ps1 ファイルの実行をサポートする必要があります。
私が探しているのは、リモート マシンを制御するためのより完全なエージェント システムです。今のところ、リモート マシンへの展開を調整および制御するために、一連の PowerShell スクリプトとイベント ログを使用しています。
私が探しているのは、Windows および .Net 環境での Bamboo に関するドキュメントと、デプロイ スクリプトを実行するようにリモート エージェントを構成する方法です。
jenkins - 組み込み Linux 用のビルド システム
Embedded Linux を使用するデバイスで作業しています。近い将来、このデバイスはおそらく製品ファミリになり、さらにいくつかのデバイス (つまり、ハードウェア プラットフォーム) がミックスに追加される予定です。これらのデバイスは似ていますが、プロセッサ、ハードウェア周辺機器 (およびデバイス ドライバ)、ユーザー空間アプリケーション、およびカーネル設定が含まれる場合があります。さまざまなデバイス用のディストリビューションをコンパイルすることに加えて、開発用のデバッグ ディストリビューションもビルドしたいと考えています。
組み込み Linux システムを組み立てて管理する一般的な方法にはどのようなものがありますか? 私はジェンキンスで遊んでいて、そこにいくつかの可能性を見ています。
c++ - CMAKE: 関数内でのリストの作成と構築 -- ディレクトリまたはグローバル スコープを使用
私は cmake のスコープ規則に完全に精通しているわけではありません。IDL の RPC コード生成を実行しながら、さまざまなファイルのリストを作成する必要があります。
リストは毎回空です。関数内から構築できる追加可能なリストが必要です。
cmake - CMake add_subdirectory()
序章:
CMakeを使用してクロスプラットフォームのコンパイルスクリプトを取得しようとしています(Windows32のVS 9.0およびUnixのMakefilesの場合)。
add_subdirectory()について理解できない問題が発生しています。
私のコードをお見せしましょう:
コンテクスト:
「module1」という名前のモジュールの私のアーキテクチャは次のようなものです:
- CMakeLists.txt
- 含む/
- file1.h
- file2.h
- * .h
- src /
- file1.cpp
- file2.cpp
- * .cpp
- テスト/
- CMakeLists.txt
- src /
- testfile1.cpp
- testfile2.cpp
私のアプリケーション全体のアーキテクチャは、これらのモジュールで構成されています。これらのモジュールは、それ自体が独立して機能するプロジェクトです。
私の目標:
モジュールをライブラリとしてコンパイルしたい
test/フォルダー内のコードでライブラリをテストしたい
これが私が書いたCMakeListsです:
これは、私のモジュールのルートディレクトリにあるCMakeLists.txtです。
そして、test /フォルダーに、CMakeLists.txtがあります。
質問
CMakeは、正しいMyProject.sln Visual Studio 9.0ソリューションを出力します。これは、OpenCVおよびXerces(およびその他のサードパーティライブラリ)にリンクされたライブラリで正常にコンパイルされます。ただし、テストバイナリはMyProjectTest.slnを出力しませんでした。
私は、add_subdirectory(dir)が次のサブディレクトリでCMakeを実行するために使用されたと思いました(つまり、名前を明確にすることはできませんでした:p!)。 test /ディレクトリを作成し、MyProjectTest.slnソリューションを作成しますか?
GUI CMakeを使用して、モジュールのルートに作成したビルドディレクトリでルートCMakeLists.txtを実行します。テスト/フォルダーであるMyProjet.slnを見つけることができるビルドディレクトリを探索すると、MyProjectTest.slnが含まれていません。
build - Autotools プロジェクトを CMake プロジェクトに変換するにはどうすればよいですか?
そのため、Autotools と CMake のテーマについて多くの記事が書かれているようですが、私の人生では、プロジェクトを Autotools (Makefile.am
およびconfigure.ac
ファイル) から CMake (CMakeLists.txt
ファイル) に変換する方法に関する適切なチュートリアルを見つけることができないようです。 )。これを行うにはどうすればよいですか?
c++ - 組み込みC/C++プロジェクトのビルドシステム
組み込みCプロジェクトを「モジュール」と「コンポーネント」に整理するのに役立つ高レベルのビルドシステム/ツールを探しています。これらの2つの用語は非常に主観的であるため、私の定義を以下に示します。
- モジュールは、cファイルとhファイルのまとまりのあるコレクションですが、他のモジュールから見えるパブリックhファイルは1つだけです。
- 一方、コンポーネント(またはレイヤー)は、モジュールのコレクションです(たとえば、アプリケーションレイヤー、ライブラリレイヤー、ドライバーレイヤー、RTOSレイヤーなど)。
ビルドシステム/ツールは-
- コンポーネントとモジュール間の循環依存を防止します(モジュール内の循環依存は問題ありません)
- モジュールのプライベートバリアへのアクセスを防止します。他のモジュールがモジュール専用のヘッダーファイルをインクルードしようとすると、ビルドシステムはエラーをスローする必要があります。ただし、プライベートバリア内のファイルには、そのバリア内の他のファイルを含めることができる必要があります。
- ホストでの単体テストの自動構築と実行をサポート(TDDの高速フィードバックループ)
- ターゲットシミュレータで実行されるサポートユニットテスト
- サポートコードの静的分析
- サポートコード生成
- コード重複検出をサポート(DRY原則を適用)
- サポートコードの美化
- 単体テストコードカバレッジメトリックの生成をサポート
- コード品質メトリックの生成をサポート
- プラットフォームに依存しない
独自のビルドツールを作成して、それに多くの時間を費やすことができました。ただし、それは私の専門分野ではなく、誰かがすでにそのようなツールを作成している場合は、車輪の再発明をしたくありません。
xcode4 - xcode 4 -- 設定ファイルに内容をエコーする方法はありますか?
構成ファイルを使用して設定を制御する、深くネストされた Xcode プロジェクトに取り組んでいます。プロジェクト内のプロジェクト内にプロジェクトがあります。構成ファイル内のものをエコーすることは可能ですか? それをデバッグしようとすると、いくつかの変数が何であるかを確認することが非常に役立つことがわかりました。BUNDLE_LOADER、HEADER_SEARCH_PATHS など。
ログファイルを読むことで、これらのいくつかを取得できることを認識しています。しかし、それは本当の痛みです!
編集: 明確にするために、これらは構成ファイルによって制御されるビルド時の変数です。
build - CMakeはフォルダを再帰的にスキャンしましたか?
特定のディレクトリを再帰的にスキャンしてソースファイルのリストを決定するようにCMakeを設定するにはどうすればよいですか?
私のプロジェクトは共有ライブラリです。私はこれに似たフォルダ構造を持っています:
ディレクトリ構造に関係なく、 CMakeでプロジェクト内のソースファイルとヘッダーファイルのリストを再帰的にスキャンsrc
して決定する必要があります。include
私も避けたい:
src/
とinclude/
ディレクトリを無限のCMakeLists.txt
ファイルで汚染する- フォルダ構造を変更するたびにスクリプトを変更して調整する必要があります
ただし、各例に独自のビルドスクリプトを設定することは問題ありません。
cmake - cmake の出力をカスタマイズする方法
たとえば、.c ファイルをコンパイルするときに、cmake で印刷するだけにしたい
Linux kbuild のように stdout に。