Re: dynamic binaries not working.
From: Daniel Jacobowitz <hidden>
Date: 2000-01-05 08:34:01
On Wed, Jan 05, 2000 at 06:04:14PM +1100, Brendan J Simon wrote:
Momchil 'Velco' Velikov wrote:quoted
Brendan J Simon wrote:quoted
I am having problems getting simple shared executalbes to work on my embedded powerpc system (MPC860). I am using an egcs-1.1.2 cross compiler and have cross-compiled linux-2.2.5 kernel, glibc-2.1 and some simple test applications. I have an app that outputs a string every second using puts(). If I compile with "powerpc-linux-gcc -m860 -static" it works, but if I compile with "powerpc-linux-gcc -m860 -shared" it doesn't work. I am mount root via nfs and the nfs-shared is used to *create* a shared library. You need -Bdynamic in order to force the executable to be linked against shared libraries.I removed the -shared argument and the executable now looks a lot better interms of the vaddr and program headers etc. I used "powerpc-linux-gcc -Wall -mcpu=860 -fpic -o bjs1 bjs1.c". I tried with -fPIC, -fpic and without either. The program still does not run however. The output of objdump -p is below.
You should not need -fpic in any form for the binary. Also, you're using old versions of tools - I really strongly recommend upgrading. GCC 2.95.2 is worlds better than egcs 1.1.2 was, and the new binutils (2.9.5.0.x) fix many nasty little bugs. Nothing below looked wrong to my inexperienced eye... Dan /--------------------------------\ /--------------------------------\ | Daniel Jacobowitz |__| SCS Class of 2002 | | Debian GNU/Linux Developer __ Carnegie Mellon University | | dan@debian.org | | dmj+@andrew.cmu.edu | \--------------------------------/ \--------------------------------/ ** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/