.out es una extensión inusual. Por lo general, esto normalmente significaría un archivo de "salida de rastreo".
Verifique la sintaxis que está utilizando para compilar
p.ej
gcc myfile.c /usr/lib/libsomelibrary.a -o outputfilename
o tal vez
g++ myfile.cpp -lm -o outputfilename
Puede examinar para ver si el bit ejecutable está establecido en el archivo
ls -l a.out
o simplemente puedes forzar el bit ejecutable
chmod +x a.out
entonces puedes ejecutar tu archivo
./a.out
o simplemente
a.out
Quizás también deba verificar que el archivo de salida se haya escrito correctamente como binario
es decir
file a.out
Esto informará de qué formato es el archivo, ya sea un script o un binario
Rara vez necesita ejecutar como root a menos que haya restringido quién debería poder ejecutar el ejecutable.
Si compiló como root (por ejemplo, sudo make), o tiene un Makefile que instaló el ejecutable como root, ¿puedo sugerirle que recupere el permiso cuando el usuario inició sesión?
es decir
sudo chown fred:fred a.out
es decir, reemplace "fred" con su identificación de usuario.