SymLink solo funciona en el mismo directorio

SymLink solo funciona en el mismo directorio
user@laptop ~ $ sudo ln -s ~/Games/JA/openjk.i386 ~/Desktop/JA
user@laptop ~ $ readlink -f ~/Desktop/JA
/home/user/Games/JA/openjk.i386

Como puede ver, el enlace simbólico apunta al archivo, pero cuando intento hacer clic en él no funciona. Sin embargo, si coloco el enlace simbólico JA en el mismo directorio que el archivo al que está vinculado (en este caso ~/Games/JA), funciona. ¿Cómo hago para que funcione fuera de ese directorio (en Desktop, por ejemplo)?

Respuesta1

El problema seguramente es que el binario openjk.i386seguramente espera algunos archivos en su directorio. Pero el binario supone que su directorio es ~/Desktop/, donde no se encuentran los archivos necesarios.

Recomendaría utilizar un script muy pequeño en lugar de un enlace simbólico. Por ejemplo, debería verse así:

#!/bin/sh
cd /pathToBinary/
./binary $@

Nombra el archivo JA y hazlo ejecutable con chmod a+x JA.

Explicación:Asegura $@que si su script se inicia con algún argumento, se reenviará al binario real.

información relacionada