linux命令行为什么输入sudo ./configure提示找不到命令

改成./configure又显示权限不够

阅读 29.8k
8 个回答

~ chmod +x ./configure
~ ./configure
shell脚本在新机器上记得添加执行权限

因为你很多细节没说, 这里只能是猜测.

1, ./configureGNU自动化工具中只是用于生成Makefile文件的, 并不需要sudo, 最后make install时才需要sudo.

2, 通常情况下configure文件都是默认有执行权限的, 但并不完全保证, 所以验证下是否有执行权限还是必要的.

3, configure会生成文件的, 确保你在当前目录中有写权限, 不然的话也会权限不足.

检查一下是否存在这个文件

没有执行权限吧 看一下权限是不是没有x

只有加执行权限才可以执行的,不然只能查看和编辑。

sudo chmod +x configure
./configure

但一般来说现成的软件包都会加上执行权限的,你装的是什么软件?

你的文件是不是可以直接启动的(即二进制文件),如果是就不需要configure

谢邀~~

前几天外出,没上网,现在给题主一些个人看法和一些建议,如果你觉得有用就采纳吧,有错欢迎指出,觉得回答不错就点个赞咯~~

简述

首先,我猜题主是在进行编译安装的过程中发现这个问题的,所以我想结合linux下的变异安装需要的一些指令以及它们的作用:

  • 在linux里编译安装软件会用到诸如 configure / make / make install
    的命令,这些都是典型的使用GNU的autoconf和automake产生的程序的安装步骤。

  • ./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。

  • make是用来编译的,它从Makefile中读取指令,然后编译。

  • make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。

关于 configure

configure,这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如:

./configure –prefix=/usr

上面的意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。

同时一些软件的配置文件你可以通过指定 –sys-config= 参数进行设定。有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –help 察看详细的说明帮助。

关于 configure 的一些常见错误

常见的错误很多,这里有一个博客收集了很多,题主可以进去看看,有没有适合自己的,如果有,那就烧香咯~

网址:http://freetstar.com/trouble-shooting-configure-make-make-install/

新手上路,请多包涵

如果 楼主刚把文件解压完,直接 ./configure的话,找不到命令
跳转到解压缩的文件里,用 ./configure 命令。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏