My current setup looks like this.....
Host:
: Dell D800 1.7GHZ with Centos 5.2 which is equivalent with RHEL 5.
: Your Developer's manual indicates to install Red Hat, Mandrake, or SUSE. Centos is made from same source as RHEL.
Target:
: Vortex86SX with 2GB DOM
: X-Linux from DMP vi GHOST
I have a program that I compiled on the Host with following ldd program:
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00235000) Actual version: libstdc++.so.6.0.8
libm.so.6 => /lib/libm.so.6 (0x007a0000) Actual version: libm-2.5.so
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00a9c000) Actual version: libgcc_s-4.1.2-20080102.so
.1
libc.so.6 => /lib/libc.so.6 (0x00655000) Actual version: libc-2.5.so
/lib/ld-linux.so.2 (0x00633000) Actual version: ld-2.5.so
So I copied...over libstdc++ and libgcc over to the Target via ftp, following the Install your program instructions. When I run the program on the target, I get:
/usr/bin/program: error while loading shard libraries: libstdc++.so.6: cannot handle TLS data
In investigating, I found that the other libraries in the ldd are symmlinks to different versions of the libraries...for instance
Target:
libc.so.6 => libc-2.3.3.so
Host:
libc.so.6 => libc-2.5.so
The Targets versions look like this:
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00235000) Not there....copied
libm.so.6 => /lib/libm.so.6 (0x007a0000) Actual version: libm-2.3.3.so
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00a9c000) Not there...copied
libc.so.6 => /lib/libc.so.6 (0x00655000) Actual version: libc-2.3.3.so
/lib/ld-linux.so.2 (0x00633000) Actual version: ld-2.3.3.so
I am pretty sure that just copying these other libraries will fix the problem with the program I wrote, but won't it break the programs on the target? I don't want to break them...
Recall the target is running X-Linux 2.54
http://www.dmp.com.tw/tech/os-xlinux/ so I can't really upgrade this so I will have to find a way to compile on the Centos Host machine and then transfer exe to the Target.
How do I get the appropriate libstdc++.so.6 and libgcc_s.so.1 that match up with the already existing other libraries on the Target. How do I compile against these libraries...I don't want to break the Host either by "downgrading". I am pretty sure the Host machine would become unusable with all those old versions.
Thanks in advance.