web-dev-qa-db-ja.com

「bash:./a.out:Permission denied」を回避してCプログラムをコンパイルおよび実行する方法

build-essentialパッケージをインストールしてGCCコンパイラをインストールしました。

インストール後、簡単なCプログラムを作成しました。私は次のコマンドでそれを実行しようとしました:

gcc First.c
./a.out

しかし、私はbash: ./a.out: Permission deniedメッセージを受け取っています。今何をすべきかわかりません。

7
Silambarasan

そのプログラム(つまりa.outを意味します)に、このコマンドによって「実行される」許可を与えます。

chmod +x ./a.out

その後、それを実行します;-)

4
sazary

実行可能ファイルa.outには実行(+ x)​​モードが設定されていないようです。

コマンドchmod a+x a.outを実行して、ユーザーにファイルを実行する権限を与えます。その後、ターミナルで./a.outを実行してファイルを実行できます。

同じことを達成する別の方法があります:

1)ファイルブラウザーでa.outファイルを右クリックします。

2)ドロップダウンメニューからPropertiesを選択します

3)Permissionsタブを開きます

4)ボックスAllow to execute this file as a programをチェックします。

1
Bilal Akhtar

コマンドを実行する

ls -l a.out

これにより、以下のようにファイルに付与された許可が表示されます。

-rw-r--r--1 js js 0 2011-03-27 19:45 a.out

最初のセットはパーミッションであり、それを実行するにはパーミッション 'execute'が必要ですchmod +x a.outまたはchmod 755 a.outを使用して実行パーミッションを付与します

1
Jamess

Writeテキストエディタを開き、上記の「 Hello World 」コードを入力します。このファイルをHelloWorld.cとして保存します。

Compileコマンドプロンプトを開き、HelloWorld.cファイルを保存した現在の作業ディレクトリに移動します。コマンドプロンプトでgcc HelloWorld.cと入力してコードをコンパイルします。プログラムに構文エラーがない場合、 Cプログラム は正常にコンパイルされます。 a.outファイルが生成されます。

許可実行許可を与える

chmod +x ./a.out

Executeコマンドプロンプトでa.outと入力してプログラムを実行します。

Outputコンソールに "Hello World"と表示されます。

0
Akbar Khan