問題タブ [waf]

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 投票する
1 に答える
713 参照

waf - カスタム タスクによって作成された静的ライブラリを使用する方法は?

waf を使用して makefile をトリガーし、別のライブラリをビルドします。このために、次のタスクを作成しました。

use キーワードで「metis」を使用できるように、タスクが静的ライブラリを作成したことを waf に伝えるにはどうすればよいですか。

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

c++ - Wafを使用してローカル外部ライブラリを検索する

システムにインストールするのではなく、プロジェクトディレクトリに保存されている外部ライブラリをリンクできるwscriptファイルを作成していますが、そのための最善の方法がわかりません。

現在、私は次のようなことをしています。

この場合、A.libのローカルコピーにリンクしてから、コードの後半でA.dllをインストールディレクトリ(ローカルの「dist」ディレクトリ)にコピーするようにマークします。ただし、システムにインストールされているライブラリについては、次のようにさらに何かを行うことができます。

私の質問は、ローカルに保存された外部ライブラリを使用してこれと同様のことを行う方法があると思います。おそらく何かcheck_cxx(libpath="external/blah", ...)または何かのようなものですか?

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

autotools - autotools ターゲットが WAF によってビルドされている

autotools から WAF へと段階的に移行しようとしています。私たちのサブプロジェクトのほとんどは自動ツールであり、それらを一度に WAF に変換したくはありません。

WAF と autotools を混同する際のヒントや留意点はありますか。

各 autotools サブプロジェクトで、基本的にシェル コマンド「./configure」、「make」、「make install」だけを実行する単純な wscript を作成することを考えていました。WAFサンプルディレクトリでこれ以上の解決策を見つけることができませんでした. それで、皆さんにもっと良いアイデアがあるかどうか疑問に思っていましたか?

ありがとう!

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

python - 大規模プロジェクトでの Scons と Waf の選択

非常に大規模なプロジェクトを GNU Make から最新のビルド ツールに変換することを考えています。私の現在の提案は、SCons または Waf を使用することです。

現在:

  • ビルド時間は約 15 分です。
  • 約100人の開発者。
  • コードの約 10% は C/C++/Fortran で、残りは Ada (gnatmake を使用) です。

改善に対する潜在的な希望/利益は

  • ビルド時間を短縮し、ディスク容量を必要とする共有コンパイラ キャッシュ
  • メンテナンスが容易

SCons はこのタスクに適していますか? Wafと同様にスケーリングしないというコメントを見てきました。ただし、それらは数年前のものです。スコンズは過去数年間のパフォーマンスで獲得しましたか? そうでない場合、Waf と比較してパフォーマンスが悪い理由は何ですか。

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

c++ - waf を使用した C++ ヘッダーのみのライブラリ

こんにちは、waf (1.7.5) に完全に移行する前に、次の構造の単純なプロジェクトを作成しようとしました。

これはルートwscriptです:

これは次のapplication wscriptとおりです。

これはlibrary1 wscript

(注: fortargetの代わりにを使用してみました。また、 の機能を有効にしようとしました。)namelibrary1cxx cxxshliblibrary1

これは次のmain.cppとおりです。

そして、これは私が得るエラーです:

ヘッダーを含める方法を変更したくありませんが、そのためには、プロジェクトの設定方法を変更する必要があるようです。

ご意見をお寄せいただければ幸いです。ありがとうございます。

EDIT:解決しました、それは単なるタイプミスでした(inludes代わりにincludesandexport_inludesの代わりにexport_includes)。

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

build - 非標準の c コンパイラを Waf で使用する

私は非標準の C コンパイラを持っています。この例ではそれを comp と呼びます。

Waf でどのように使用できますか?

すべての例で次のことがわかります。

そして、ビルドやタスクがそれに関連付けられるように、独自のコンパイラ - comp をロードしたいですか?

ありがとう!

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

waf - waf 1.7: 環境をどのようにコピーしますか?

複数のターゲット、複数のプラットフォーム、および場合によっては複数のアーキテクチャ用に複数のライブラリを構築している waf ファイルがあります。

私は現在、waf 1.7 のドキュメントに従って次のようなバリアントの環境をセットアップしています。

ただし、これにより、waf は configure 中にコンパイラを検索して複数の行を出力します。それはまた、同じ環境の近くに何度も頻繁にセットアップしていることを意味します. 可能であれば、これを一度実行したいと思います。たとえば、次のようになります。

ただし、 conf.env.derive は浅いコピーであり、 conf.env.copy() はエラー'list' object is not callableを返します

これはwaf 1.7でどのように行われますか?

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

c++ - 特に特定のモジュールに対して gcc フラグ (CXXFLAGS) を指定する方法は?

最近、新しい NS3 モジュールを構築しています。私のコードでは、 の新しい機能を使用しています。構成システムに gcc フラグ (CXXFLAGS)をC++11 (c++0x)追加したいと考えています。"-std=c++0x"waf

私はこれを試みました:CXXFLAGS="-std=c++0x" waf configure、そしてそれをビルドします。ただし、ipv4-address などの既存のモジュールの一部は と互換性がないことが判明しましたc++11。したがって、他のモジュールが c++11 でコンパイルされないように、特に新しいモジュールに対してこのフラグを指定したいと考えています。

これを新しいモジュールの wscript に追加しようとしました:

最初の試行として失敗します。

どうやってやるの?

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

linker - NS3 で yaml-cpp を使用する方法

NS3 モジュールで yaml-cpp lib を使用する方法を知っている人はいますか?

ソースコードを書き終えたのundefined reference toですが、wafでビルドするとエラーが出てリンクの仕方がわかりません。