1

だから、Cで書いたプログラムをSamsung Galaxy Tab 2(仮想マシン内)で実行しようとしています

問題なくコンパイルされ、makeコマンドはスムーズに実行されますが、プログラム自体は実行されません

shell$ ./prot

これにより、次のエラーが表示されます。

bash: ./prot: Permission Denied

これらは、ファイルのアクセス許可です。

-rw-rw-r-- 1 root sdcard-rw 8609 Mar 20 16:23 prot

これは何ですか?どうすればこの小さな問題を克服できますか?

PS .: 私は Ubuntu を使用しています。このプログラムは私の Mac でコンパイルして問題なく動作します。

編集:teppic の回答を参照してください、それは私の問題を解決しました。

4

3 に答える 3

3

SD カードが でマウントされている可能性が非常に高いため、SD カードnoexec上のファイルを実行できません。を見て/etc/fstab、sdcard のエントリがある場合は、このオプションを削除します。execオプション with で再マウントすることも通常は可能mount -o remount,execです。

それ以外の場合は、実行可能ファイルが許可されている場所 (例: ) にコピーできる場合があります/tmp

于 2013-03-20T16:50:05.377 に答える
1

実行の許可、つまりxビットセットが必要です。試す

chmod +x prot

それを修正します。

于 2013-03-20T16:31:53.210 に答える
0

変更するには管理者権限が必要な場合があります。試してください:

$> sudo chmod 777 プロト

于 2013-03-20T16:37:46.287 に答える