Bash says some executables exist, but don't exist at the same time.
- Inicie sesión o regístrese para enviar comentarios
This is really counter-intuitive. I kind of mentioned it in another topic where someone else was having a similar problem with the binary download of Thunderbird, but he solved his Thunderbird problem in another way and the thread mostly ended up being discussion about installing packages without an Internet connection, so this was never really addressed there.
I have two programs downloaded that seem to have this problem: Ryzom and Cube. I can easily live without Cube (it's not really that great of a game), but Ryzom is definitely something I want to work, and it isn't available as a package.
Attached are screenshots of terminal windows showing exactly what I did and also showing that Bash knows the files exist and are executable, and at the same time is telling me that it can't find them. Here is the raw text as well:
http://pastebin.com/V4Z1jNtT
http://pastebin.com/0Dsc8uce
This is on Trisquel 6. Both Ryzom and Cube worked just fine on Trisquel 5.5.
Adjunto | Tamaño |
---|---|
Screenshot from 2013-03-19 18:19:27.png | 31.55 KB |
Screenshot from 2013-03-19 18:20:35.png | 45.88 KB |
I imagine the problem lies within cube_unix, not BASH. In most cases
your home directory is not within your $PATH. So it seems to me that
there are two options:
* Update cube_unix so that it uses the exact path to linux_client
* Add /home/julian/cube/bin_unix/ to your $PATH
> * Update cube_unix so that it uses the exact path to linux_client
It already does:
> CUBE_DIR=~/cube
> [...]
> cd ${CUBE_DIR}
> exec ${CUBE_DIR}/bin_unix/${MACHINE_PREFIX}${SYSTEM_PREFIX}client $*
And it has nothing to do with the problem with Ryzom, where the executed file is a binary, not a shell script. Like I said, Cube isn't all that important.
I've seen similar errors on another architecture when the dynamic linker
specified in the binaries was missing. Missing 32-bit libraries might
cause it when running 32-bit programs on 64-bit x86 systems.
("objdump -sj .interp" shows what dynamic linker the binary uses.)
Well, I'm using the 64-bit version, but I was using the 64-bit version on Trisquel 5.5 too. I'd still like to check this, but I don't really understand what I'm supposed to do with "objdump -sj .interp" (that exact command just gives an error).
Cube is considered non-free, but I'm pretty sure that just the artwork (non-functional data) is non-free, and the functional data is free. I think this is okay? I could be wrong.
A free (at least from what I can see, some sources say it's non-free in the same sense as well) alternative to Cube is Red Eclipse, in case you're interested.
You could probably look around and find .deb packages of Cube and Ryzom and go from there.
I already know about Red Eclipse and have it installed. Like I said, I don't much like Cube, but what I like in Cube 2 is the single-player, not the multi-player; Red Eclipse doesn't have this. The only completely free FPS I'm aware of with a proper single-player campaign is Freedoom; all the others just have multiplayer, which is particularly annoying when they have so few people playing at any given time that the only way to play multiplayer is to be opportunistic (this applies to every free FPS that I know of except for AssaultCube and OpenArena).
What happens if you
sh -x ./ryzom_client
Where did you get those files from?
Have you tried this? http://dev.ryzom.com/projects/ryzom/wiki/LinuxBinaries
./ryzom_client: 1: ./ryzom_client: Syntax error: "(" unexpected
I got them from the official Ryzom website, of course. More specifically, it links to a download from SourceForge: http://sourceforge.net/projects/ryzom/files/ryzom_client.7z/download
Could you post the output of:
$ ldd ~/ryzom/ryzom_client
I also guess the problem has something to do with the multiarch support (that has been removed from Toutatis' default install). If you want to try a fix before the actual examination of the problem, try installing the "ia32-libs-multiarch" package.
> Could you post the output of:
> $ ldd ~/ryzom/ryzom_client
Just one line:
> not a dynamic executable
Trying to install ia32-libs-multiarch, I got these errors:
Errors were encountered while processing:
/var/cache/apt/archives/libgtk2.0-0_2.24.10-0ubuntu6+6.0trisquel2_i386.deb
/var/cache/apt/archives/libgail18_2.24.10-0ubuntu6+6.0trisquel2_i386.deb
/var/cache/apt/archives/libsdl1.2debian_1.2.14-6.4ubuntu3+6.0trisquel1_i386.deb
/var/cache/apt/archives/gtk2-engines-pixbuf_2.24.10-0ubuntu6+6.0trisquel2_i386.deb
/var/cache/apt/archives/libgail-common_2.24.10-0ubuntu6+6.0trisquel2_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Packages were broken, so I tried telling Synaptic to fix them, and it gave me these errors:
E: /var/cache/apt/archives/libgtk2.0-0_2.24.10-0ubuntu6+6.0trisquel2_i386.deb: './usr/share/doc/libgtk2.0-0/changelog.Debian' is different from the same file on the system
E: /var/cache/apt/archives/libsdl1.2debian_1.2.14-6.4ubuntu3+6.0trisquel1_i386.deb: './usr/share/doc/libsdl1.2debian/changelog.Debian.gz' is different from the same file on the system
E: /var/cache/apt/archives/gtk2-engines-pixbuf_2.24.10-0ubuntu6+6.0trisquel2_i386.deb: './usr/share/doc/gtk2-engines-pixbuf/changelog.Debian' is different from the same file on the system
E: /var/cache/apt/archives/libgail18_2.24.10-0ubuntu6+6.0trisquel2_i386.deb: './usr/share/doc/libgail18/changelog.Debian' is different from the same file on the system
E: /var/cache/apt/archives/libgail-common_2.24.10-0ubuntu6+6.0trisquel2_i386.deb: './usr/share/doc/libgail-common/changelog.Debian' is different from the same file on the system
But I'm sure this was the problem, because the error I was seeing before has disappeared (and now I've got a different error complaining that libGL.so.1 is missing, which is easy enough to fix, but I want to fix these broken packages, first).
I have the same error when I try to install ia32-libs:
I tried : apt-get -f install
,but the error is there.
Since this bug isn't yet mentioned in this thread
https://trisquel.info/en/issues/8155 - Problems installing 32 bit Trisquelized packages on 64 bit systems
- Inicie sesión o regístrese para enviar comentarios