É porque o sudo é executado somente dentro de secure_path
definido em /etc/sudoers
ou $PATH
definido para sudo. Por exemplo, no meu sistema,
$ sudo env | grep PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
$ sudo cat /etc/sudoers | grep secure_path
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
Então, você tem algumas soluções:
-
Faça um link de
/usr/lib64/qt4/bin/qmake
para um dossecure_path
, por exemplo:sudo ln -s /usr/lib64/qt4/bin/qmake /usr/bin/qmake
-
Ou adicione
/usr/lib64/qt4/bin
em/etc/sudoers
da seguinte forma:Defaults secure_path="sbin:/bin:/usr/sbin:/usr/bin:/usr/lib64/qt4/bin"
Na linha acima, mantenha o outro texto como está, apenas adicione seu caminho
/usr/lib64/qt4/bin
no final, conforme o exemplo.