VSCodeでC言語のデバッグを行う際、コンパイル時に指定するオプションをtasks.jsonのargsに記述できますが、例えば以下のように記述してもstdオプションとlmオプションが無視されてしまい、コンパイルエラーとなってしまいます。
json
1"args": [ 2 "-std=c99", 3 "-g", 4 "${file}", 5 "-lm", 6 "-o", 7 "${fileDirname}/${fileBasenameNoExtension}" 8]
gccのバージョンは4.9.4です。拡張機能Remote-SSHを用いてリモート接続している環境で行っています。接続しているマシンのOSはWindows10で、接続先のマシンはCentOS7です。
同様のコマンドを直接ターミナルに打ち込み、手動でgdbコマンドを実行した場合は何の問題もなく動作します。これをVSCodeのデバッグ機能で実行できるようにしたいのですが、どうしたらよいでしょうか。
エラーメッセージを提示しましょう
すみません、わかりにくかったですね......。
出力されるエラーは次の通りです。
> Executing task: C/C++: gcc build active file <
Starting build...
Build finished with error:
(ファイル名): 関数 ‘main’ 内:
(ファイル名): エラー: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
for (int i = 0; i < 10; i++) {
^
(ファイル名): 備考: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
ターミナル プロセスが起動に失敗しました (終了コード: -1)。
あなたの回答
tips
プレビュー