Newsgroups: comp.os.linux.development Path: gmd.de!xlink.net!howland.reston.ans.net!europa.eng.gtefsd.com! uunet!nwnexus!claircom.com!atlantis.claircom.com!rob From: r...@atlantis.claircom.com (Rob Kenny) Subject: ELF binaries Organization: Claircom Communications, L.P. Date: Mon, 24 Jan 1994 20:38:17 GMT Message-ID: <CK5Int.7Gs@claircom.com> X-Newsreader: Tin 1.1 PL5 Keywords: ELF Sender: use...@claircom.com (Poster Boy) Nntp-Posting-Host: nimo.claircom.com Lines: 23 I have looked through all the FAQ's, HOWTO's and source code at sunsite, and I cannot find out the latest status of ELF binaries running under Linux. I've looked at fs/binfmt_elf.c and sure enough, my ELF binary gets loaded, but /usr/lib/libc.so.1 doesn't work. The only one I could find was in /pub/Linux/distributions/SLS.old/a3/elfabi.tgz, but it only prints: Interpreter: 10b 3000 2000 lcall 7,xxx:eax = 00000036 lcall 7,xxx:eax = 00000004 lcall 7,xxx:eax = 00000004 lcall 7,xxx:eax = 00000004 .. So, could "someone in the know" please, please, please help me? TIA -- Rob Kenny email: r...@claircom.com Claircom Communications phone: (206) 389-5947 700 5th Ave, Suite 2100 fax: (206) 389-5972 Seattle, WA 98104 "Poignant comment here"
Path: gmd.de!xlink.net!howland.reston.ans.net!cs.utexas.edu!uunet! vtserf.cc.vt.edu!solaris.cc.vt.edu!maddog.async.vt.edu!balister From: balis...@maddog.async.vt.edu () Newsgroups: comp.os.linux.development Subject: Re: ELF binaries Date: 26 Jan 1994 04:05:07 GMT Organization: Mad Dog Enterprises Lines: 26 Message-ID: <2i4q5j$a9v@solaris.cc.vt.edu> References: <CK5Int.7Gs@claircom.com> Reply-To: pbali...@vt.edu NNTP-Posting-Host: maddog.async.vt.edu X-Newsreader: TIN [version 1.2 PL2] Rob Kenny (r...@atlantis.claircom.com) wrote: : I have looked through all the FAQ's, HOWTO's and source code at sunsite, : and I cannot find out the latest status of ELF binaries running under : Linux. I've looked at fs/binfmt_elf.c and sure enough, my ELF binary : gets loaded, but /usr/lib/libc.so.1 doesn't work. The only one : I could find was in /pub/Linux/distributions/SLS.old/a3/elfabi.tgz, : but it only prints: : Interpreter: 10b 3000 2000 : lcall 7,xxx:eax = 00000036 : lcall 7,xxx:eax = 00000004 : lcall 7,xxx:eax = 00000004 : lcall 7,xxx:eax = 00000004 : .. : So, could "someone in the know" please, please, please help me? I think I know something ... I think your ELF binary is really a SVR3 binary not an ELF binary. Try the ibsc2 emulator. Join the IBCS2 channel of the list or mail me for more info. (I can't keep the acronym straight) Philip -- Linux: The choice of a GNU generation!
Newsgroups: comp.os.linux.development Path: gmd.de!xlink.net!howland.reston.ans.net!news.cac.psu.edu! news.pop.psu.edu!ra!tantalus.nrl.navy.mil!eric From: e...@tantalus.nrl.navy.mil (Eric Youngdale) Subject: Re: ELF binaries Message-ID: <CK83MA.ECy@ra.nrl.navy.mil> Sender: use...@ra.nrl.navy.mil Organization: Naval Research Laboratory References: <CK5Int.7Gs@claircom.com> <2i4q5j$a9v@solaris.cc.vt.edu> Date: Wed, 26 Jan 1994 06:06:09 GMT Lines: 45 In article <2i4q5j$...@solaris.cc.vt.edu> pbali...@vt.edu writes: >Rob Kenny (r...@atlantis.claircom.com) wrote: >: Linux. I've looked at fs/binfmt_elf.c and sure enough, my ELF binary >: gets loaded, but /usr/lib/libc.so.1 doesn't work. The only one >: I could find was in /pub/Linux/distributions/SLS.old/a3/elfabi.tgz, >: but it only prints: >: Interpreter: 10b 3000 2000 >: lcall 7,xxx:eax = 00000036 >: lcall 7,xxx:eax = 00000004 >: lcall 7,xxx:eax = 00000004 >: lcall 7,xxx:eax = 00000004 > >I think I know something ... > >I think your ELF binary is really a SVR3 binary not an ELF binary. Try the >ibsc2 emulator. Join the IBCS2 channel of the list or mail me for more >info. (I can't keep the acronym straight) Perhaps it is a static linked ELF binary. I just tried a hello world program, compiled and static linked on a SVr4 machine and it ran just fine proided that I have the ibcs2 stuff in my kernel. It gives messages like the above without the ibcs2 patches. FWIW, the correct name is IBCS2 (Intel Binary Compatibility Specification 2). The mail channel is IBSC2, which I can only explain by saying that my fingers slipped when I created the channel :-). Note that SVr4 has some syscalls which are not yet in the ibcs2 emulation module, but this sort of thing would be relatively easy to add. (Hint: If someone is really interested in getting involved with ibcs2, an extra set of hands would come in handy.). A little bird told me that a COFF libc shared library is well underway, and I suspect that this could just be compiled under SVr4 to provide a ELF shared library for SVr4 programs. The elfabi package that was referred to in the original post was a bit of a kluge - I was hoping to avoid generating my own version of a library, so I came up with an interface between the linux libc and the SVr4 ABI. While it was an interesting exercise, there were some issues which could not be cleanly solved in that framework. A proper ibsc2 library would be much cleaner I think. -Eric -- "The woods are lovely, dark and deep. But I have promises to keep, And lines to code before I sleep, And lines to code before I sleep."
Newsgroups: comp.os.linux.development Path: gmd.de!xlink.net!howland.reston.ans.net!usenet.ins.cwru.edu! wariat.org!kf8nh!bsa From: b...@kf8nh.wariat.org (Brandon S. Allbery) Subject: Re: ELF binaries References: <CK5Int.7Gs@claircom.com> <2i4q5j$a9v@solaris.cc.vt.edu> Organization: Brandon's Linux box and AmPR node, Mentor, OH Date: Wed, 26 Jan 1994 22:54:50 GMT Message-ID: <1994Jan26.225450.4536@kf8nh.wariat.org> Lines: 28 In article <2i4q5j$...@solaris.cc.vt.edu>, pbali...@vt.edu says: +--------------- | I think your ELF binary is really a SVR3 binary not an ELF binary. Try the | ibsc2 emulator. Join the IBCS2 channel of the list or mail me for more | info. (I can't keep the acronym straight) +------------->8 Someone typoed when setting up the channel; it's called "IBSC2". Made it hard for me to send mail for a while... ELF and COFF are file formats. Linux binaries in ELF and COFF format work. I think Eric Youngdale is already using Linux executables in ELF format; when the GNU utilities properly support ELF (shared libraries are a sticking point right now, I believe) ELF will become a "preferred" object file format, because it handles many object file constructs automatically that the ancient BSD a.out format needs help to deal with (C++ global constructors in particular). iBCS-2 is an ABI (application binary interface; in essence, it defines the system calls). iBCS-2 is not yet working fully; we're working on it. The "released" iBCS-2 kernel module does nothing more than print out the "lcall 7,0" instructions that iBCS-2 compliant programs use for system calls. ++Brandon -- Brandon S. Allbery kf...@kf8nh.ampr.org b...@kf8nh.wariat.org "MSDOS didn't get as bad as it is overnight -- it took over ten years of careful development." ---dmegg...@aix1.uottawa.ca