質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

Q&A

1回答

896閲覧

C言語プログラムの実行ができないことに関して

Kooom

総合スコア1

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

0グッド

0クリップ

投稿2021/06/15 08:01

ソースコードの問題よりかはパソコンに関する問題と思われるのですが、プログラムを実行しようとしても以下のようなコンパイルエラーが出るのですが解決方法がわかるかたはいますか?ちなみにVScodeを利用しています。

c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: cannot open output file a.exe: Permission denied
collect2.exe: error: ld returned 1 exit status

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

itagagaki

2021/06/15 08:05

実行手順を最初から説明してみてください。
Kooom

2021/06/15 09:23

vscodeを開き実行したいファイルを開いた上でgcc -o a ファイル名.cと入力した後、./aと入力しようとするとその前に先ほどのようなエラーが出てきます。
itagagaki

2021/06/15 10:10

VSCODEのターミナルに gcc -o a ファイル名.c を打ったらエラーが出たということですよね。 たぶんカレントディレクトリが書き込み許可のない場所なのだと思いますが、そこに ファイル名.c を保存できているのなら、そうでない気もします。 ターミナルで pwd ls -al を実行して、その結果を教えてください。
Kooom

2021/06/15 13:30

Get-Location : 引数 'is-al' を受け 入れる位置指定パラメーターが見つか りません。 発生場所 行:1 文字:1 + pwd is-al + ~~~~~~~~~ + CategoryInfo : Inv alidArgument: (:) [Get-Locati on]、ParameterBindingException + FullyQualifiedErrorId : Pos itionalParameterNotFound,Micr osoft.PowerShell.Commands.Get LocationCommand という風に出てきました。どこかに問題があるのでしょうか?
itagagaki

2021/06/15 13:50

is じゃありません。ls です。 そして ls -al のように間に空白が必要です。 ls がコマンド、-al はオプション引数です。 そして pwd と ls は別のコマンドです。 pwd ls -l を順番に打ってください。 それ以前の話になりますが、どこでコマンドを打ちました? ターミナルでMingwのbashを動かしているのだと思いますので(そうですよね?)そこで上記のコマンドを打ってください。 gcc -o a ファイル名.c というコマンドは、そこで打ったのではないですか? なんか、もっとゼロからステップバイステップで学べるような、ちゃんとした書籍なりサイトを読んで、順を追って経験を積む必要があるように思います。
Kooom

2021/06/15 14:07

ls -lと入力したところ以下のように出力されました。 Get-ChildItem : パラメーター 'Lite ralPath' の引数が指定されていませ ん。型 'System.String[]' のパラメ ーターを指定し、再試行してください 。 発生場所 行:1 文字:4 + ls -l + ~~ + CategoryInfo : Inv alidArgument: (:) [Get-ChildI tem]、ParameterBindingExceptio n + FullyQualifiedErrorId : Mis singArgument,Microsoft.PowerS hell.Commands.GetChildItemCom mand ls -alと入力したところ以下のように出力されました。 Get-ChildItem : パラメーター名 'al ' に一致するパラメーターが見つかり ません。 発生場所 行:1 文字:4 + ls -al + ~~~ + CategoryInfo : Inv alidArgument: (:) [Get-ChildI tem]、ParameterBindingExceptio n + FullyQualifiedErrorId : Nam .PowerShell.Commands.GetChild ItemCommand ターミナルでMingwを動かしておりそこでコマンドを打ちました。 ターミナルの起動など基礎的な部分の勉強不足でこのような質問をすることになってしまい申し訳ございません。この問題が解決できたら改めて勉強しなおしたいと思います。
itagagaki

2021/06/15 14:31

ああ、わかりました。ターミナルでWindows PowerShellが動いていますね。bashではなく。 そしてコマンドを打つと、Get-ChildItemコマンドレットが動いていますね。 打ったコマンドはGet-ChildItemコマンドへのパラメータとなって。 どうしてそういうことになっているのか、ちょっとわかりませんが、ターミナルの設定がおかしいか、使い方が間違っていると思われます。 でもgccは起動できているんですよね…。うーん。 もしかしてコンパイルは、ターミナルでgccを使っているのではなくて、何かVSCodeの拡張機能みたいなものでやっているのですか?
Kooom

2021/06/17 01:54

もしコンパイルの方がVScodeでされているとすれば意図していないものです。もともとはgccを利用していました。他のファイルをワークスペースに追加したうえで実行すると問題はないのですが今回は新しいファイルを作り直すのが早いのですかね?
guest

回答1

0

コンパイル結果が書き込みできない、というエラーです。

そのフォルダに書き込み権限がない、
そのフォルダが存在しない、
その実行ファイルを別のところで開いている/実行している

などの場合に出ます

投稿2021/06/15 08:14

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問