我目前有一台华硕c300 chromebook。因为它没有传统引导,所以我使用crouton来获得一个更标准的命令行环境。我能够很容易地在chroot环境中安装gcc。它在chroot下工作得很好。
由于底层硬件是相同的,我认为生成的可执行文件应该可以在chromebook上运行,而不需要我处于chroot环境中。如果是真的,我想我可以进入chroot环境,编译我想要/需要的任何程序,然后退出到常规环境并使用它。
我用一个简单的hello world程序尝试了一下。当我试图运行可执行文件时,我得到了以下错误:
bash: ./a.out: Permission denied.我尝试使用sudo运行它,但得到了一个类似的错误:
sudo: unable to execute ./a.out: Permission denied.我甚至使用su作为root登录,但仍然无法运行程序(得到第一个错误)。
我认为su/sudo会覆盖任何类型的权限限制。但是,chromebook显然不是这样的。
我遗漏了什么?我想做的事情是可能的吗?
编辑:文件权限已设置为777。
发布于 2015-07-31 07:09:45
您可能只需更改文件的权限或检查文件的所有权。umask决定默认情况下创建的文件是否获得执行权限。文件上的-ls -lat显示了什么?
还可以尝试运行
chmod +x ./a.out发布于 2015-07-31 15:47:42
您可以使用strace命令找到有关错误的更多详细信息
使用:
strace ./a.out并检查输出。
我想你在chroot下有不同的env (path and LD_library_path)。
https://stackoverflow.com/questions/31735164
复制相似问题