問題タブ [scons]
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.
c++ - プラットフォーム固有のプロジェクト ファイルを使用するか、プロジェクト ジェネレーターを使用して自動化をビルドしますか?
sln
Visual Studio 、vcproj
、vcxproj
ファイル、またはXCode
xcodeproj
OS X のプロジェクトなど、プラットフォーム固有のプロジェクト ファイルを生成できるビルド システムがいくつかあります。
そのうちの 1 つが CMake ですが、これのサポートは非常に限定的でバグが多く、新しいバージョン (VS 2010 など) で更新し続けることが非常に難しいことがわかりました。
また、少なくとも CMake は Visual Studio のプロパティ ページのサポートを欠いているため、すべてのプロジェクトのコード分析の有効化/無効化など、プロジェクト全体の構成の管理と変更が難しくなっています。
上記の問題の回避策は、プラットフォームごとに手動でプロジェクト ファイルを作成することです。私の場合は 2 つしかありませんが、それ以上の数があってもそれほど大きくはなりません。
プラットフォーム固有のビルド コマンドを一般的なビルド自動化スクリプトに呼び出すのは非常に簡単です。たとえばwaf
、独自のビルド部分を使用せずに、いくつかのプロジェクトでこれを自動化するために (Python) を使用しました。
プロジェクト ジェネレーターの修復/保守を試みるか、プロジェクト ファイルを分離して保持するか、どちらを選択するかを確認したいと思います。
c - コンパイラの種類に応じて、C コンパイラの SConstruct でオプションを設定するにはどうすればよいですか?
C コンパイラの追加オプションを設定する必要があります。たとえば、コンパイラの種類に応じて、すべての警告をオンにするフラグを追加します。たとえば、MSVCの場合は使用する必要があります
しかし、mingw(gcc)の場合、次を使用する必要があります:
どうすればsconsの方法でこれを行うことができますか?
scons - scons ベースのソースのバンドル
すべてのビルドのニーズに SCons を使用しており、ライブラリをオープン ソースで配布したいと考えています。
現在、ほとんどのソフトウェアはビルド メカニズムとして ./configure、make、および make install を使用しています。
次のソリューションがあります。
- そのままバンドルするだけで、scons をビルドする必要があります。
- scons を呼び出すだけのダミーの configure と makefile を追加します。
- autoconf と makefile を追加します。
ビルドに python と scons を必要とするソフトウェアを入手することはどのように認識されていますか?
scons - scons:1つのファイルのビルドオプションをオーバーライドする
簡単な質問ですが、答えはわかりません。
インクルードが含まれるビルドscons
があるとします。代わりにwithをオーバーライドしたいファイルが1つあります。どうすればこれをsconsで行うことができますか?CCFLAGS
-O1
needsOptimization.cpp
-O1
-O2
更新:これは私がbialixの答えに基づいてやったことです:
私のSConscriptファイル:
以前、このファイルは次のとおりでした。
java - OSXの下のJAVA_HOME変数...正確には何ですか?
私はOSXでevaldictatorを構築しようとしています。残念ながら、アリやスコンが実際に何をするのか、私にはほとんど、あるいはまったくわかりません。
私の主な質問は、次のようなことをするときです
私は何をやっている。
前もって感謝します
makefile - Make の人気の理由と代替案
(makefile ジェネレーター ツールの有無にかかわらず) 古い Make をビルド ツールとして目立たせるには、どのような力が働いているのでしょうか? 代替案が広く採用されるのを妨げているのは、代替案の欠陥なのか、それとも宣伝が不十分なのか、それとも Make の何かがそれを維持しているのでしょうか?
Make には多くの弱点があり、大規模なプロジェクトに対処するのが困難ですが (たとえば、http ://freshmeat.net/articles/what-is-wrong-with-make を参照)、 Sconsなどの新しく改良された代替手段よりも、まだ広く使用されているようです。ジャム、レーキ、クックなど。
代替手段には測定可能な利点がありますか?それとも、「市場シェア」は主にチーム リーダーの意見と経験によるものですか?
c++ - コンポーネント テストのテスト フレームワーク
要件に合ったテスト フレームワークを探しています。自動テスト中に実行する必要がある手順は次のとおりです。
- セットアップ (いくつかの入力ファイルがあり、特定のフォルダーに読み取るかコピーする必要があります。)
- 実行 (スタンドアローンで実行)
- Tear Down (クリーンアップしてシステムを古い状態に戻す)
これとは別に、.cc ファイルが変更された場合、変更を検証できるすべてのテストを実行する必要があることを確認するためのインテリジェンスも必要です。
これについては、scons を使用して PyUnit、cppunit を評価しています。私が正しい方向に進んでいることを確認するために、この質問を実行することを考えました。他のテスト フレームワーク ツールを提案できますか? また、適切なテスト フレームワークを選択するために、他にどのような要件を考慮する必要がありますか?
php - scons を使用して PHP 拡張機能を作成できますか?
PHP 拡張機能を作成する標準的な方法は、autoconf/automake を phpize というスクリプトと一緒に使用することです。これは、PHP 環境に固有のテンプレートに基づいて autoconf 構成を生成するようです。これで、適切なバージョンの PHP などの PHP 拡張機能をビルドできます。
autoconf と、それを構成するために使用される m4 言語は難解であり、人々は scons などの代替案を作成しています。PHP拡張機能を構築するときに、これらのいずれかを使用できるようにしたいと考えています。
原則として、scons または同様のツールを使用して PHP 拡張機能を構築できるはずです。ただし、phpize ステップをどのように置き換えるかはわかりません。
scons や別の最新のビルド ツールを使用して PHP 拡張機能をビルドすることに成功した人はいますか?
build - バージョン番号が含まれるパスでコンパイラを見つける方法は?
組み込みシステム プロジェクト用の SConstruct ファイルを設計しようとしています。私のマシンのコンパイラは "C:\Program Files\IAR Systems\Embedded Workbench 5.4\arm\bin" にあります。Embedded Workbench の別のバージョンがインストールされている場合でも、ビルド システムにツールチェーンを見つけさせたいと思います。ユーザーが別の場所にインストールすることを選択しました。
makefile や ant ファイルで使用される戦略にも興味があります。おそらくここでも役立つからです。
これを行うためのいくつかの戦略は何ですか? Windows レジストリを検索するか、「C:\Program Files\IAR Systems\Embedded Workbench *\arm\bin」を検索する以外にオプションはありますか?
scons - SCons はあまり冗長ではありませんか?
SCons ログから長いコンパイル/リンク コマンドを削除したいと考えています。
私はこのページに書かれていることに従いました: コンパイラの行を短くするために何をしますか?
これがまさに私がしたことです:
SCons は if に入り ('test' が表示されます)、CXXCOMSTR と LINKCOMSTR が更新されます (Dump() でチェックされます)。
しかし、SCOns はまったく気にしないようです。まだ完全な g++ コマンドを出力します。
手伝ってくれてありがとう。