- ベストアンサー
clでのコンパイル結果を取得
clでのコンパイル結果を取得 C#でファイル名と必要なオプションを設定して、ボタンを押すと自動的にファイルをコンパイルしてくれるようなものを作りたいのですが、コンパイルはできたのですが、どこでエラーがでたのかという処理中のデータを表示したいのですが、よくわかりません。ご教授の方、よろしくお願いします。 ちなみにコンパイルするファイルはC言語のファイルです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- clでコンパイルができません
C言語初心者です。VistaでMicrosoft Visual C++ 2008 Express Editionを使用しています。ことのあらましは以下の様です。 以前まではスタートメニューからVisual Studio 2008 コマンドプロンプトをひらいてディレクトリを移動しcl ファイル名でコンパイルしていたのですが、ある日突然fatal link error C:\Users\(私の苗字)を開けませんといったような表示が出るようになり、コンパイルができなくなりました。まずcファイルはC:直下のそれ用のフォルダに保存してあるので、なぜ(ユーザー名前)開こうとしているのかわかりませんでした。それからいろいろ調べて保存場所を変えたりいじったりしてはインストールしなおすということを繰り返したのですがうまくいかず、ユーザー名の苗字と名前の間にスペースがあるのが原因と考えてユーザー名変更したところ、Visual Studioからひらいたコマンドプロンプトなのに 「'cl'は、内部コマンドまたは外部コマンド、 捜査可能なプログラムまたはバッチ ファイルとして認識されていません。」 と表示されました。 おそらくいじった時に何か消してはいけないものを消したのではと思っているのですが、どうしたらいいでしょうか…どなたか、どうか教えてください。
- 締切済み
- C・C++・C#
- cl.exeを呼び出して実行する方法について
C言語初心者です。基本的な質問で申し訳ございません。 自作コンパイルコマンドのためのコーディング内容を考えてますが、 cl.exeを呼び出して実行する方法がわかりません。 自作コンパイルコマンドで処理したい内容としては、 ・コマンド実行時の引数より、以下の指定を可能にしたいと思います。 - 出力ファイル名を指定するためのオプション名(例: -o) - 出力ファイル名 - ソースファイル名を指定するためのオプション名(例: -f) - ソースファイル名 - ソースの中で定義されているサービス(関数名)を指定するための オプション名(例: -s) - ソースの中で定義されているサービス(関数名) コンパイルコマンド実行時にcl.exeを内部的に実行したいと考えておりますが、cl.exeを呼び出して実行するための方法がわかりません。
- ベストアンサー
- C・C++・C#
- コンパイル結果が違う
コンパイル結果が違う C言語を勉強中の初心者です。 以下のプログラムをVC++6.0のCL.exeでコンパイルするとうまくいくのですが、VC++2010のCL.exeでコンパイルして実行すると、t2の値が0になってしまいます。 また、VC++2010でコンパイルした方が実行結果も遅いです。 #include <stdio.h> #include <time.h> int main(void) { int i = 1; time_t t1, t2; time(&t1); while(i <= 30000) printf("%d,", i++); time(&t2); printf("\ntime1=%ld time2=%ld\n", t1, t2); printf("かかった時間は、%d秒です\n", t2-t1); return 0; } vc++2010でコンパイルした方のt2の値が、0で表示されてしまうのはなぜでしょうか? よろしく、お願いします。
- ベストアンサー
- C・C++・C#
- c言語のコンパイルについて教えてください。
Unixとwindows98を使用しています。 #include<stdio.h> #include<math.h> (以下 省略) と、c言語のプログラムをして、コンパイルを、gcc ファイル名.c と するのでしょうか。 cl ファイル名 -lm とするのでしょうか。 どうすれば良いか、教えてください。 説明が下手で申し訳ございません。 お答えを待ってます。
- ベストアンサー
- C・C++・C#
- C言語初心者です。コマンドプロンプトのコンパイルが出来ません。
C言語初心者です。コマンドプロンプトのコンパイルが出来ません。 教習所ではVisual studio 2008を用いてたので"cl"で出来たのですが、 自宅のパソコンのコマンドプロンプトでsoccer.cというファイルを作り、コンパイラしても「'cl'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません」というエラーがでてしまいます。 Visual studioではありません。ノートPCに元から入ってた既存のコマンドプロンプトを使ってます。 なのでソフト名は分かりません。使ってるパソコンはwindowsです。 どなたかコンパイルの方法を教えてください!
- ベストアンサー
- その他(ソフトウェア)
- 分割コンパイルのリンク時のファイル名の指定法
Visual Studioコマンドプロンプト(2010)で、分割コンパイルを試みています。自分で調べて、次のことまでは分かりました。 ソースファイル “1.c” “2.c” “3.c” がある。それぞれ、リンクはせずにコンパイルだけ行うには、 “cl /c 1.c”で、“1.obj”が生成する。 “cl /c 2.c”で、“2.obj”が生成する。 “cl /c 3.c”で、“3.obj”が生成する。 これらを、次のようにリンクすると、 “link 1.obj 2.obj 3.obj” ↓ “1.exe” が生成する。 この最後のリンクのところで、“1.exe”でも“2.exe”でも“3.exe”でもない別のファイル名(“program.exe”など)に、実行ファイルを指定したいのですが、 “link /?” を見てみると、どのオプションを指定すればいいか分かりません。どなたか、ご教授ください。お願い致します。
- ベストアンサー
- C・C++・C#
- コンパイルできない "clは内部コマンド・・・
独習Cという本を見て Microsoft.NET Framework SDK2.0のインストールとBorland C++ Compiler5.5をインストールして環境変数のPathの変数値の末尾に「;c:\borland\bcc55\Bin」と入力して設定したのですが、コマンドプロンプトでprog.cというファイルを作り、コンパイラすると「clは内部コマンド...」というエラーがでます。 パソコンの環境はvistaを使用し、秀丸エディタでファイルは作りました。 コマンドプロンプトに 「C:\Users\ユーザー名>cl prog.c」としたのですが何か根本的に間違えているのでしょうか?教科書を見る限りこれ以上設定する項目はないのですが。
- ベストアンサー
- C・C++・C#
- コンパイルできない
C言語のプログラムをはじめたばかりの初心者ですが、 "smp1.c"というソースファイルをメモ帳でつくり、コマンドプロンプトで上でコンパイルしようとしたのですが、うまくいきません。 smp1.cファイルの内容は #include <stdio.h> int main(void) { printf("Hello\n"); return 0; } となっています。cworkというディレクトリにすべてのプログラムを保存しています。 コマンドプロンプト上でcworkディレクトリに移動し"C:\cwork>" の後に ”cl smp1.c ” とタイプしてenter を押しても 'cl' is not recognized as an internal or external command, operable program or batch file. と表示されコンパイルできません。 一体どうすればいいでしょうか? 初心者なので説明不足かもしれませんが その際は補足しますので、どうが教えてください.
- ベストアンサー
- C・C++・C#
補足
コンパイル方法はバッチファイルを実行してコンパイルしています。(先に書いておくべきでしたねw) 教えていただいたサイトを参考にしながらバッチファイルの出力を取得して表示まではできたのですが、取得した文字を改行をして表示することができませんでした。 //出力時にC#用に文字列の改行コードを修正 String text = e.Data.Replace("\r\n\r\n", "\r\n"); textBox1.AppendText(text);