- ベストアンサー
【VC2005】コマンドプロンプトでc++をコンパイルしたい
- WindowsXP proでVisualC2005を利用している方向けの、コマンドプロンプトでc++をコンパイル、実行する方法についての質問です。
- 参考ページの方法では専用のコマンドプロンプトを使用するが、通常のコマンドプロンプトからもclコマンドを実行したいとのことです。
- おそらく、Pathを通す作業が必要かもしれませんが、具体的な方法について教えてください。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
#5の方のvsvars32.batについてですが、VisualStudio2005がインストールされている場合、 "%vs80comntools%vsvars32%" で実行可能です。たとえば、プロンプトを起動して "%vs80comntools%vsvars32" cl x.cpp とすればx.cppがコンパイルできるはず。 1コマンドでコンパイルしたければ "%vs80comntools%vsvars32" & cl x.cpp と1行で記述してもコンパイルできます。
その他の回答 (6)
- n2201makita
- ベストアンサー率30% (8/26)
> 上記の方法の専用のコマンドプロンプトではなく、通常のコマンドプロンプトから > 上記で紹介された「cl」のコマンドを実行できないでしょうか。 先ず、上記の方法で起動したコマンドプロンプトから、C:\>set >compile.bat エディターでファイルを開き、compile.bat の全行先頭に"set "を追加すれば良い。 後は、ファイルの最後に cl などを追記してゆく。 なお、エディターと、バッチファイルは予備知識。
- kmee
- ベストアンサー率55% (1857/3366)
正確な場所と名前は忘れましたが vs8vars.bat というような名前のバッチファイルが、インストールした場所のどこかにあります。 これを実行すると必要な環境変数の設定ができます。 ただ スタート>VS2005>コマンドプロンプト とするのを ・スタート>アクセサリ>コマンドプロンプト ・C:\Program Files....\vs8vars.bat と2ステップになる、というのは既にある通りです。 >windows上で、他の言語から、既存のC++のソースを使用したいと思って >いろんなC++コンパイラを試している途中なのです。 というのが今一つ意味がわかりません。 もしかして、 他言語でCのプログラムを出力→コンパイル→実行→結果を他言語で取り込み みたいなことですか?
補足
貴重な情報、有難うございます。 >他言語でCのプログラムを出力→コンパイル→実行→結果を >他言語で取り込みみたいなことですか? そんな感じです。 (まだ、あまり詳細は決めていません。) 今回は、質問内容が実現できるかどうか確認したく、 質問させて頂きました。
- Tacosan
- ベストアンサー率23% (3656/15482)
「何と比べて」と言えば, 当然比較対象は「それ用のコマンドプロンプト上で実行すること」です. #2 でも書かれてるんだけど, Visual C++ がまともに動くようにするためにはいくつかの環境変数を設定しなきゃならない. で, それらの環境変数を設定するためにしかるべきファイルを実行することになる. ところが, そもそも「専用のコマンドプロンプト」は「環境変数を設定するためのバッチファイルを実行してるだけ」なので, それとは別に作ることにあんまり意味があると思えないんだな~. もともと「専用」じゃないのでねぇ.
- BLK314
- ベストアンサー率55% (84/152)
No.1さんも言っているようにあまりメリットがないと思います。 Windows上で他言語から利用したいならDLLにすべきでしょう。 DLL化するメリットとして (1)バイナリ配布可能になる 他のPCへインストールする際、コンパイラをインストールしないで済みます。 (2) コンパイル済みなので動作が高速 ソースの大きさにもよりますが、通常ビルドには秒単位で時間かかりますよね。 これが省略できます DLL化を考えてみたら如何でしょうか。 Cインターフェースにすれば VB等からも標準的な手法で呼び出せます。 何と言ってもWindowsAPI自体がDLLで実装されていますから!
- magicalpass
- ベストアンサー率58% (378/648)
コマンドプロンプトからコンパイルを実行するためには環境変数の設定が必要です。 まず必要な環境変数を調べてください。Visual Studioから起動するコマンドプロンプトでどんな環境変数が設定されているか見るのも参考になるでしょう。 今度はそれらの必要な環境変数を通常のコマンドプロンプトで設定します。毎回いちいち手打ちで設定するのは大変なので、設定用のバッチファイルを作っておき、コマンドプロンプトの起動時に実行するようにします。 Pathは環境変数の中に含まれています。Visual Studioの各種ツールを起動する時にPathが通っている必要があるので、それらのディレクトを環境変数「Path」に設定しておくのです。コマンドプロンプトはカレントディレクトリに無い実行ファイルは「Path」に指定されているディレクトリを探して起動します。 コンパイラ、リンカ等の動作には「Path」以外にも「INCLUDE」、「LIB」、その他の環境変数を設定しておく必要があります。 環境変数の設定・確認には「SET」コマンドを用います。単に「SET」とした場合は設定されている環境変数を表示します。 環境変数を設定するときは「SET AAA=○○○」とすると環境変数AAAに○○○が設定されます。削除するときは「SET AAA=」とします。
- Tacosan
- ベストアンサー率23% (3656/15482)
もちろんできるんだけど, 設定しなきゃならない環境変数がいくつかあるのであんまりメリットはないと思うよ. そのようにしたい理由がわからないのでなんとも言えないんだけど....
お礼
ご回答、ありがとうございます。 windows上で、他の言語から、既存のC++のソースを使用したいと思って いろんなC++コンパイラを試している途中なのです。 何と比べてメリットがないのでしょうか。 また、勉強のため、本件の方法をご存知であれば 教えて頂きたくお願いします。
お礼
ご回答、有難うございます。 出来ました♪!!