ubuntu – 在Linux中如何在Qt Creator中添加一个构建步骤,该步骤使用su权限而不会在构建时获得错误的密码尝试?

前端之家收集整理的这篇文章主要介绍了ubuntu – 在Linux中如何在Qt Creator中添加一个构建步骤,该步骤使用su权限而不会在构建时获得错误的密码尝试?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的目标是成功将文件链接到/ opt /目录 – 需要使用sudo运行.

我试过这个:

system(sudo ln -s $$OUT_PWD/xampp /opt/lampp):message("You should manually link LAMPP")

但是从qt-creator构建它不会提示输入sudo密码,因此我无法将其链接到该文件夹​​.我在编译器输出中遇到“密码尝试错误…”错误.然后我用构建步骤尝试了这些:

make
sudo make install

看看它是否会提示我,但是在make install步骤中失败了同样的错误,这是详细的:

00:31:20: Starting: "/usr/bin/sudo" make install
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry,try again.
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
Sorry,try again.
sudo: 3 incorrect password attempts
00:31:20: The process "/usr/bin/sudo" exited with code 1.

当我使用qmake&&时,qmake脚本中的system()函数工作正常.制造&&从终端安装,因为它在sudo ln …命令之前提示我;但为了快速测试目的,我觉得在Qt Creator中用CTRL-B构建也应该使用sudo命令…

有没有办法从Qt Creator提示,或者解决这个问题?就像在Qt Creator中存储sudo pass一样(尽管它有风险)……或者可能让它在终端上运行构建步骤,它会提示我? qmake中的prompt()函数是否可以收集sudo密码?

欢迎任何建议……

经过大量研究:
ssh-askpass Sudo Password | sudo -S bash ./script

像魅力一样工作,它在一个单独的窗口/提示框中要求输入密码.我在自定义构建步骤下添加了它.重要的是让sudo知道它会通过-S选项输入密码.

echo "password" | sudo -S bash ./script

也可以使用bash脚本,但是您可能认为在脚本中存储sudo密码是不安全的.据说读取权限应解决该问题.

猜你在找的Ubuntu相关文章