Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Jun 1998 14:20:59 +1000 (EST)
From:      John Birrell  <jb@cimlogic.com.au>
To:        root@enigami.com (The & of all Evil)
Cc:        brianfeldman@hotmail.com, freebsd-current@FreeBSD.ORG
Subject:   Re: ELF preparation step 2 done
Message-ID:  <199806010421.OAA16535@cimlogic.com.au>
In-Reply-To: <x7lnrh6cmh.fsf@singularity.enigami.com> from The & of all Evil at "May 31, 98 11:10:14 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
The & of all Evil wrote:
> "Brian Feldman" <brianfeldman@hotmail.com> writes:
> 
> > Well, after making world and having all /usr/libexec/{elf,aout}, I guess one could make an ELF world in a couple steps, if they're interested:
> > 	1. export BINFORMAT=elf and make usr.bin/objformat, and make install it
> > 	2. go to lib/, 'echo "BINFORMAT=elf" > /etc/objectformat' and make all the libs, and install them (to /usr/lib? mine installed there, I moved them to /usr/lib/elf, should the elf libs really be there or just /usr/lib?)
> > 	3. make the world; it _should_ work now, but I didn't try it
                                                 ^^^^^^^^^^^^^^^^^^^
Obviously.

> 
> singularity:/usr/src/lib 14# make all
> ===> libcom_err
> cc -O -pipe -c /usr/src/lib/libcom_err/com_err.c -o com_err.o
> Unrecognized line in /etc/objectformat: BINFORMAT=elf
> Unrecognized line in /etc/objectformat: BINFORMAT=elf
> com_err.o: file not recognized: File format not recognized

A few things (not necessarily all) you need to do:

1.   Make world to get aout and elf tools (built as aout executables) in
     their new places and objformat installed in /usr/bin.
2.   chflags -R noschg /usr/obj/usr/src/tmp
3.   rm -rf /usr/obj/*
4.   Create /etc/objectformat with the line OBJFORMAT=elf
5.   Add BINFORMAT=elf to /etc/make.conf
6.   cd /usr/src/csu/i386-elf; make obj/depend/all/install
7.   cd /usr/src/gnu/usr.bin/cc/libgcc; make obj/depend/all/install
8.   cd /usr/src/lib/libc; make obj/depend/all/install
9.   cd /usr/src/libexec/rtld-elf; make obj/depend/all/install
10.  cd /usr/src/lib; make obj/depend/all/install
11.  cd /usr/src/gnu/lib; make obj/depend/all/install
12.  cd /usr/src; make obj/depend/all/install

I have tried this. Step 12 bombs in src/gnu/usr.bin/ld.

-- 
John Birrell - jb@cimlogic.com.au; jb@freebsd.org http://www.cimlogic.com.au/
CIMlogic Pty Ltd, GPO Box 117A, Melbourne Vic 3001, Australia +61 418 353 137

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806010421.OAA16535>