From owner-freebsd-current Tue Mar 12 17:37:42 1996 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id RAA14411 for current-outgoing; Tue, 12 Mar 1996 17:37:42 -0800 (PST) Received: from austin.polstra.com ([206.213.73.10]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id RAA14378 Tue, 12 Mar 1996 17:37:35 -0800 (PST) Received: from austin.polstra.com (jdp@localhost) by austin.polstra.com (8.6.12/8.6.12) with ESMTP id RAA16462; Tue, 12 Mar 1996 17:37:34 -0800 Message-Id: <199603130137.RAA16462@austin.polstra.com> To: freebsd-current@freebsd.org Cc: freebsd-hackers@freebsd.org Subject: Elfkit-1.0.1 announcement Date: Tue, 12 Mar 1996 17:37:34 -0800 From: John Polstra Sender: owner-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I've just returned from a 10-day holiday, and I see that my "elfkit" has gotten some mention in connection with Søren and Peter's recent progress on ELF support in the FreeBSD kernel. So I guess I might as well announce it officially, and describe what it is and what it isn't. Against my better judgement, I'm sending this announcement to both -current (because that's where I think it belongs) and -hackers (because that's where Jordan suggested I send it). Please confine followups to -current only. WHAT IS ELFKIT? Elfkit is a collection of tools for compiling and executing ELF programs under FreeBSD-2.1.0-RELEASE and later. It consists of: * Patches for gcc-2.7.2, to make it support ELF under FreeBSD. * Patches for binutils-2.6, to make it support ELF under FreeBSD. * Patches for libc from FreeBSD-2.1.0-RELEASE, to support building it as an ELF shared library. * An ELF dynamic linker. * A user-level test program that can invoke the dynamic linker to load and execute ELF programs under FreeBSD. (The user-level test program is probably superfluous, now that the kernel can directly load and execute ELF executables.) WHAT CAN I DO WITH IT? You can compile and link arbitrary programs, as long as they use only libc. (The other libraries aren't converted yet.) The output of the linker is a standard, dynamically-linked ELF executable. You can also build ELF shared libraries. WHO SHOULD USE ELFKIT? The current release of elfkit is intended for people who want to help develop ELF support under FreeBSD. If you simply want to run ELF programs, and don't want to learn anything else about it, come back in a few months. WHAT IS THE STATUS OF ELFKIT? Elfkit is a work-in-progress, not a finished product. If you use it, you should be prepared to deal with some disruption when new releases come out. For example, the installation procedure and the directory structure could change in future releases. Of course, I intend to stabilize such things as soon as is practical. But it's not practical yet -- we're still too early in the development cycle. WHERE CAN I GET IT? ftp://ftp.polstra.com/pub/FreeBSD/elfkit/elfkit-1.0.1.tar.gz WHAT ELSE WILL I NEED? * gcc-2.7.2.tar.gz, from any GNU site. * binutils-2.6.tar.gz, from any GNU site. * The sources for libc, from FreeBSD-2.1.0-RELEASE. If at all possible, you should get your libc sources from one of the FreeBSD mirror sites, or from the 2.1.0 CD-ROM. If that's absolutely impossible for you, you can get it from: ftp://ftp.polstra.com/pub/FreeBSD/elfkit/libc-2.1.0.tar.gz Please try to avoid getting the libc sources from ftp.polstra.com. Its network connection is only a 56K frame relay link. WHERE DO I SEND BUG REPORTS AND COMMENTS? elfkit-bugs@polstra.com HOW CAN I HELP? Help is welcome, especially in the areas of library conversion and testing. At this time, only libc has been converted to support ELF. Eventually, all the other libraries will have to be converted as well. Libc is by far the most difficult; I expect that most of the other libraries will simply need to be recompiled using the elfkit tools, and tested. This sounds easy, but nevertheless is it work that somebody is going to have to spend time doing. As more ELF libraries become available, there will be an increasing need for testing -- i.e., building larger and larger parts of the FreeBSD system as ELF executables, and trying them out. Send mail to elfkit-bugs@polstra.com if you'd like to help. -- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Self-knowledge is always bad news." -- John Barth