問題タブ [dub]

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 に答える
1216 参照

d - D の最適化レベルは?

dub以下の最適化されたバイナリをビルドするための昇順は何ですか? (例 ... デバッグ < プレーン < リリース ...)

dub build -b release-noboundsから派生したように見えるので、最速の実行可能ファイルをビルドするdmd -O -release -boundscheck=offのに相当するものは何ですか?dub

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

d - 最小ダブまたは DMD バージョンを指定できますか?

Dmd と Dub の古いバージョン (1.0.0 ではなく 0.9.2) で私のプロジェクトをビルドしようとする人がいますが、うまくいきません。dub.json ファイルで、最低限必要な吹き替えバージョンを指定できますか?

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

c++ - dub を使用して C++ リンク可能な静的ライブラリを出力する

D ライブラリ (ダブを使用) を C++ アプリに静的にリンクしたいと考えています。

wiki の指示に従って、例を手動で正常にリンクしました。

しかし、ダブを使用する独自のライブラリがあり、cl.


私が何を意味するかをお見せしましょう ( wiki のコード例ですが、吹き替えが追加されています):

プロジェクト ディレクトリ:

main.c:

libadd/dub.json:

libadd/ソース/libadd.d:


wiki の指示を使用したコンパイルとリンクは正常に機能します。

しかし、ダブでこれを行うにはどうすればよいですか?dmdを手動でコンパイルするとが生成されるの.objに対し、が生成されることに気付きましdub.lib。Google 教授によると.lib、Windows の静的ライブラリですが、リンクできません。私はすでにに設定targetTypestaticLibraryていdub.jsonます。

dmdまた、 flags-m32mscoffdub.json に-betterC対応する設定がないことにも気付きました。とはいえ、補償の仕方がわかりません。buildOptions


dub を使用する D ライブラリを C++ アプリと静的にリンクするにはどうすればよいですか?

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

d - 64 ビット コンパイラを使用するように DUB を構成する

アプリケーションを 64 ビット実行可能ファイルとしてコンパイルするように DUB を構成するにはどうすればよいですか? これが私の dub.json です:

この行を dub.json に追加してみました:

しかし、その後dub build出力されました:

だから私は行を次のように置き換えてみました:

しかし、このエラーが発生しました:

私は Windows 10 を使用しており、DMD 2.074.0 と Visual Studio 2015 および 2017 がインストールされています。

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

d - DUB 構成ファイルで、依存関係の構成 (buildOptions) を変更するにはどうすればよいですか?

「myapp」というプロジェクトがあり、「sdlang-d」に依存しているとします。dub build --build=release-debugコマンド ラインから使用して、プロジェクトをリリース デバッグとしてビルドしたいと考えています。SDLang の問題 #54により、sdlang-d を release-debug としてビルドすることはできません。そのため、ダブ構成ファイルを使用して、ビルド時に関係なく、sdlang-d を強制的に「debug」または「debugMode」としてビルドしたいと考えています。 「myapp」のオプションを選択し、デバッグ バージョンの sdlang-d をリリース バージョンの myapp にリンクします (これにより、sdlang-d の外部にあるコードが最適化の恩恵を受けることができます)。

テスト目的で、この状況をシミュレートするために「dub_dependency_config」という github プロジェクトを作成しました。次のテキストでは、私が試したことから観察した具体的な出力を提供するため、「myapp」の代わりに「 dub_dependency_config 」を参照します。

シンプルな dub.sdl 設定ファイルから始めます...

...そしてでコンパイルしようとするdub build --build=release-debugと、もちろん問題#54がそのことを行います:

これを回避するには、次のように書けると思います。

これが実際に機能するとは思っていませんでした。ドキュメントには、そうすべきだとは書かれていません。とにかく試してみましたが、ダブはbuildOptionsタグ内のdependencyタグを無視しているようです。構成ファイルは以前のものと同等になり、同じ問題 #54 コンパイラ エラーが発生します。

このスレッドで言及されているように、この問題を解決するための推奨される方法と思われるsubConfigurationについて読みました。 経験するために失敗した構成をたくさん与えてくれました。いくつか見てみましょう:subConfiguration

これにより、次の結果が得られます。

そのため、私が何を意味するのか理解できず、慰めの賞として、私は取り除くことができないというしつこいメッセージを受け取りました;)

先へ!

出力:

興味深いことに、私たちはそれを構築して...何かを手に入れました (私には何のことかわかりませんが、それは私のプログラムではありません)。

より多くの組み合わせ!再帰しましょう!

出力:

ナグが消えた!しかし、それは単に私がもっと失敗したことを意味すると思います。

学習のために、subConfiguration タグから情報のきしみを取得したいので、機能しないことがわかっていることを試します。

いいえ、私の間違った試みは間違った結果をもたらしました:

どうすれば機能しますか?

(余談ですが、.sdl 形式には非常に感謝しています。.json バージョンでも同じ問題が発生しました。コメント機能が不足しているだけで、ドキュメントはおろか、トラブルシューティングも困難になりました。)