10周年のSPコンテンツ!

MSBuildとVisualStudioでのビルドの違い

CUIからビルドをするときに違いがあるなら、それぞれでビルドが成功することを確認すべきだと思ったので調べていたら、みなさんに教えてもらいました。
プログラミング
17
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
【質問】devenv.exe と msbuild.exe と VisualStudioでの手動ビルド の違いってなんですか?
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
中で何が起きているかわからなくて爆死している。
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
Devenvでもビルドできるが、msbuildでビルド推奨とある。なら、これは手動ビルドとは違うのか。 / Devenv コマンド ライン スイッチ http://t.co/jbWeuiY4 @feedlyさんから
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
ここでも紹介はMSBuildかcsc.exeになっている。が、VS自体のコマンドラインがあるみたい。それがVSでのビルドと等価なのだろうか。 / Visual Studio のコマンドおよびスイッチ http://t.co/cy9TR7Aw @feedlyさんから
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
@zakkas783 なるほど。。。ということは、devenvでのビルドでオプションをつけくわえたものがvsのビルドと一緒になりそうですね。ありがとうございます!
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
VSのGUI操作をCUIで操作できるコマンド一覧。引数あるやつ。 / “引数を使用する Visual Studio コマンド” http://t.co/9HDZE8Yz
zak @zakkas783
@kyon_mm よく使います。(emacsから(ヲ
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
@zakkas783 やはりwww いま、Jenkinsから使ってやろうとしていますw
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
VSのGUI操作をCUIで操作できるコマンド一覧。エイリアス定義済みのやつ。 / “Visual Studio コマンドの定義済みのエイリアス” http://t.co/Yy09pcgU
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
【結論】IDEと等価なビルドはdevenv.exe {hoge.sln} /build release IDEと等価な操作を行いたいときは基本的にdevenv.exeのコマンドラインを使うこと。 http://t.co/jbWeuiY4
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
@aetos382 はい。bleisさんに「ちがうっぽいが詳しくはわからない」と言われたので調べました。意外です。
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
eclipseがantのビルドとは等価ではないようなものだと理解した。 > msbuild.exe visualstudio
眼力 玉壱號 @objectxplosive
.@kyon_mm 結果として同じ engine 使ってる気がする。2010 以前だと VC だけちょっと扱いが違っていたけど今は統合されていたハズで… @ufcpp 氏なら何か知ってるかな?
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
ビルドに関しての推奨はMSBuildだが、いろいろとVSで使うためにラップしているらしい。VSと等価な操作はこちらで行うのが妥当っぽい。 / “Devenv コマンド ライン スイッチ” http://t.co/4Zt0P2fH
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
@objectxplosive @ufcpp msのページではないのですが、stack over flowで「devenvはmsbuildをラップしている」と書いてありました。今回はそこらへんがシビアなプロジェクトなので差異が気になりまして。CUIで出来るならやりたかったのです。
oda shinsuke @shinsukeoda
@kyon_mm VS が中で色々設定してたりするので、若干違うんですよー。例:ClickOnce の発行
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm
@shinsukeoda ClickOnceは触ったことがないのですが、そうなのですね。。。大変そうです><
あえとす 10/14 池袋ボドゲ会 @aetos382
@kyon_mm @objectxplosive @ufcpp VSがmsbuildを呼んでるのは確かだと思うし、TFSはmsbuild使ってるから、だいたい等価なことができないと困るとは思うのだけど、具体的にどこがどう違うのかがよくわからず…。
眼力 玉壱號 @objectxplosive
.@aetos382 @kyon_mm @ufcpp build Task を自分で書いている場合は assembly の依存関係解決が微妙に違う(msbuild の方が厳密)という話があるなぁ…➤ http://t.co/BHzVpJTs
眼力 玉壱號 @objectxplosive
.@kyon_mm @aetos382 @ufcpp 基本的には違いを無くす方向で動いていると考えて間違いはなくて、しいて言えば *.vdproj が扱えないとかその程度の違いしか無いという話の様ですねぇ…
あえとす 10/14 池袋ボドゲ会 @aetos382
@objectxplosive @kyon_mm @ufcpp vdproj とか 2012 ではサポートなくなりましたし、MS 的にも「どーでもいい」ものかなあ、と。
残りを読む(1)

コメント

コメントがまだありません。感想を最初に伝えてみませんか?

ログインして広告を非表示にする
ログインして広告を非表示にする