David Rusling wrote:
> 
> Mike,
> 
>     thank you very much.   I think that what I was doing was not building
> the correct version of glibc, I had glibc-2.1, not 2.1.3.  After a bit of
> fiddling I can now build static applications for my ARM Linux box.
> This is with gcc 2.95.2 but I think that gcc 2.95.1 would also work.
> 
>     I build all my stuff for /usr/local/gnu so I ended up having to
> create a link from /usr/local/gnu/lib to /usr/local/gnu/arm-linux/lib
> (I also have arm-elf for the eCOS work that I've been doing).
> 
>     All I have to do now is to figure out how to 'install' the shared
> libraries onto my pocket Linux system...
> 
Well, now that you have a complete working toolchain, you can start building
all the components for your disk image for your pocket Linux system. A good
place to start would be to get ARM packages from the Debian site. If you want
to build 'glibc' from scratch to put on your own disk image, here is one way
of doing it.

1) Create a ramdisk using '/dev/ramX' or use the loopback device and format
   an 'ext2' filesystem on it.

2) Un-pack your 'glibc' sources again.

3) Put your cross-compilation environment in your path and run the configure
   script for 'glibc' only this time using '--prefix=/usr'. This will
   configure 'glibc' in a special way that will install the libraries in
   '/lib' like it is on a "normal" Linux system. (By telling it the prefix
   is /usr AND that the target is a Linux variant, glibc figures out that
   you are creating it to be the main C run time library on the system)

4) Go ahead and do a 'make' and let it finish. STOP THERE!

5) WARNING!!! Now that 'glibc' has been built you are now ready to install
   it. If you were to do a 'make install' it would overwrite your host PC
   libraries and you would be screwed. Instead you want to do the install
   using 'make install_root=[path-to-mounted-disk-image] install'. This
   will then install 'glibc' to your disk image.

6) Continue putting whatever else you want on your image.

7) Unmount disk image. Hurray, you are done.

Hope this helps.

-Steve

-- 
 Steven J. Hill - Embedded SW Engineer
 Public Key: 'finger [EMAIL PROTECTED]'
 FPR1: E124 6E1C AF8E 7802 A815
 FPR2: 7D72 829C 3386 4C4A E17D

unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]
++        Please use [EMAIL PROTECTED] for           ++
++                        kernel-related discussions.                      ++

Reply via email to