Cercando di far funzionare casperjs su Ubuntu 12.04. Dopo averlo installato quando corro ottengo:
09:20 $ ll /usr/local/bin/casperjs
lrwxrwxrwx 1 root root 26 Nov 6 16:49 /usr/local/bin/casperjs -> /opt/casperjs/bin/casperjs
09:20 $ /usr/bin/env python --version
Python 2.7.3
09:20 $ cat /opt/casperjs/bin/casperjs | head -4
#!/usr/bin/env python
import os
import sys
09:20 $ casperjs
: No such file or directory
09: 22 $ python
Python 2.7.3 (default, Sep 26 2013, 20:03:06)
[GCC 4.6.3] on linux2
Quindi Python è presente e eseguibile, casperjs punta nel posto giusto ed è uno script Python. Ma quando lo eseguo ottengo "Nessun file del genere".
Posso risolverlo cambiando la prima riga del file python casperjs da:
#!/usr/bin/env python
per:
#!/usr/bin/python
Risultato:
$ casperjs --version
1.1.0-DEV
Sono riuscito a risolverlo, ma mi chiedo perché non abbia funzionato #!/usr/bin/env python
, dal momento che sembra essere una normale linea di interpreti. Ho qualcosa di configurato sbagliato?
Ecco i passaggi per ottenere casperjs:
$ git clone git://github.com/n1k0/casperjs.git
$ cd casperjs
$ ln -sf `pwd`/bin/casperjs /usr/local/bin/casperjs
$ casperjs
: No such file or directory
: No such file or directory
dell'output che contengono i tentativi di esecuzione. [modifica: ho appena visto la risposta di Gilles. Controllare le linee nell'output di strace che sembrano execve("/usr/bin/python\r", ...)
. ]
strace /usr/local/bin/casperjs
la versione non funzionante? Sarebbe utile se potessimo vedere quali file env tenta di eseguire e se env non riesce a trovare Python o Python non riesce ad aprire lo script.