There is a step by step instructions how to run Targetware on modern distro.
TW is compiled with legacy libraries that do not work with modern distributuions.
- They may be just not povided like libcurl2
- They may collide with newer versions - like libopenal0 and libopenal0a
These libraries should be provided together with binary and preloaded for use independently of the "main" distro libraries
Make symbolic link for libcurl2 (you should run this as root or with sudo)
ln -s libcurl.so.3 libcurl.so.2
If the path to libcurl.so.3 is different in your distro you can find it using "locate libcurl.so.3"
It contains two shared objects (libraries) that were taken from old distributions and usually do not provided by modern one.
Extract them to your targetware folder (where the targetware binary is placed) so you should see something like this
data docs fmtest LICENCES libopenal.so.0.0.8 libstdc++-3-libc6.2-2-2.10.0.so targetware tool
Create a following batch file in targetware directory (I assume that you have targetware folder placed in your home directory
LD_PRELOAD="./libopenal.so.0.0.8 ./libstdc++-3-libc6.2-2-2.10.0.so" ./targetware
and name it run-tw
Make running permissions chmod +x run-tw
Now just run: ./run-tw and enjoy
It was tested on Debian Etch 32bit but expected to work on any other modern 32bit distros.
On debian and ubuntu libstdc++-3-libc6.2-2-2.10.0.so may be not nesessary because it is provided by package libstdc++2.10-glibc2.2 that is avalible from the repositories with apt.
Using symbolic link for libcurl.so.2 is dirty way. The better solution is to bring all the required libraries to preload. However there were too many of them (that libcurl itself depends on others).
Good luck and may the Tux be with you...
Tested systems :
- Debian 4.0 Etch
- Fedora Core 6
- Ubuntu 6.06 Dapper
- Gentoo x86_64 (with some tweaking of 32bit libraries for 64bit system)