Binutils and ELF

Binutils and ELF

Post by Kevi » Thu, 24 Aug 1995 04:00:00



  I'm having a bit of trouble compiling a kernel from the Linux Universe
CD. I've tried downloading the latest binutils for ELF, but they do not
want to run on my system, and I've tried every permission under the sun!

  Does anyone else have this CD and had the Kernel compile right, or
compile a slakware kernel from scratch?

Thanks!
Kevin

--
      ^      
    _' `_      * Kevin Lo -- http://www.geopages.com/SiliconValley/1070/    

(  ' __. `  )  * FreeBSD 2.0.5R / DOS     * AKA Radnor on most MUSH/MUSEs
 `-''   ``-'  GCS/MU/Od+H-s!gp?!aua--w++v++C++++HU+P+L3N+++E----KW+M--V---po+

 
 
 

Binutils and ELF

Post by Steve Dunh » Fri, 25 Aug 1995 04:00:00


:   I'm having a bit of trouble compiling a kernel from the Linux Universe
: CD. I've tried downloading the latest binutils for ELF, but they do not
: want to run on my system, and I've tried every permission under the sun!

:   Does anyone else have this CD and had the Kernel compile right, or
: compile a slakware kernel from scratch?

It says `file not found' right?  The file that is not found is
/lib/ld-linux.so.  To get it, install a recent version of ld.so. (Same
place you got binutils.)

Then it will say that it can't find libc.so.5.  That means you're
missing the ELF libc; again, you can get it the same place you got
binutils.  But you're going to have to move some of the a.out
libraries out of the way first.

You see, the only ELF libc that has been publicly released by the libc
maintainer is version 5.0.9.  Your distribution is based on libc
version 4.  They are not compatible. libc-5.0.9 was released in late
May.

In order to run any ELF binaries that are on sunsite, you will
basically have to follow the same procedure as the a.out people who
upgrade to ELF.  (Except that you won't be able to run your old X apps
and they will.)  See the ELF HOWTO for more info.  

(If you want to use your current system, you can try compiling
binutils yourself.  Don't know if the kernel build will work after
that though...)

Steve


 
 
 

Binutils and ELF

Post by Paul Hou » Sat, 26 Aug 1995 04:00:00


        Well,  a few months ago I started making the big change over to ELF;
I pretty much did what was in the ELF-HOWTO and it worked.  Anyway,  before
then I had upgraded my ncurses because I had downloaded something didn't work
with the ncurses I had...  That broke the MidNight Commander causing it to
become the MonoChrome Commander,  but otherwise it worked so I didn't make
a big deal of it.  Well,  lately I've started thinking that I'd really be
a lot happier with more ELF libraries so I can compile more stuff in ELF...
Gee,  I really need an ELF ncurses so I can recomplie MC and nethack and so
forth.

        Well,  pretty soon I got very *ed to recompiling my libraries
as ELF shared libraries.  I haven't done tk yet because I haven't yet upgraded
to an ELF X windows,  but when the tcl lib is compiled shared the binary
for tclsh shrinks from about 150k to about 4k.  Now,  it's true that with a
total of about 1.4 GB of online storage I don't need to be ~too~ picky about
the size of my binaries,  but hey,  I really like it when the ncurses demo
programs shrink from about 180k to 10k.  (Hey,  this might buy us a year or
two before the increasing number of TCL extensions requires us to double
our numbers of TCL-ish interpreters every time we add one;  tcl,  expect,
tk,  expect + tk,  tclX,  tk + tclX,  tk + expect + tclx + blt...)

        [NB -- ncurses 1.9.3 doesn't actually seem to make perfectly working
libs for me;  I ~think~ there is an error in the makefile that gives the
shared libs the name ../lib/libncurses or something like with the effect
that it works great for compiling the demos but causes other programs that
aren't compiled and run from the right directory to miss them when they
are in /usr/lib.  I think I know how to fix this and this weekend I'll send
the authors the details.]

        Anyway,  now that I can make tons of extra shared libraries,  as
someone who's both a Linux user and hopefully a developer,  how should I
avoid abusing my new powers?  Are there any limits that I should respect as
to making shared libs?  Whenever I see something like S-LANG,  TCL,  or
whatever that would add libs to my /usr/local/lib,  should I jump right away
to make the program produce shared libs or I am likely to hurt the ecology
of my hard drive this way?

        What guidelines should I follow if I ever release binaries of
programs I write?  I assume,  for instance,  that once can usually assume that
people have,  say,  shared libs for libc!  But right now probably most people
don't have ELF shared ncurses libs so I presume that I shouldn't give away
binaries that use them.  My assumption is that if I write a program that
requires ncurses,  the linker will automatically use shared libs if a person
has them or link statically if they don't so I don't think this is ~too~ much
of an issue.

        Still,  it would be really nice to see a HOWTO or a FAQ or something
with ELF guidelines for the application programmer (in fact,  we could have
used something like this a long time ago -- I don't know how often that I get
really bizzare things by ftp that have encouraged me to add I don't know how
many symbolic links because people put their include files in the wrong
places on their machines...)

 
 
 

Binutils and ELF

Post by Steve Dunh » Sun, 27 Aug 1995 04:00:00


:       What guidelines should I follow if I ever release binaries of
: programs I write?  I assume, for instance, that once can usually
: assume that people have, say, shared libs for libc!  But right now
: probably most people don't have ELF shared ncurses libs so I presume
: that I shouldn't give away binaries that use them.  My assumption is
: that if I write a program that requires ncurses, the linker will
: automatically use shared libs if a person has them or link
: statically if they don't so I don't think this is ~too~ much of an
: issue.

Actually, the more recent beta versions of libc (ELF, of course) use
ncurses instead of BSD curses.  :)

Steve

 
 
 

Binutils and ELF

Post by Rene Pijlma » Sun, 27 Aug 1995 04:00:00



>    What guidelines should I follow if I ever release binaries of
>programs I write?  I assume,  for instance,  that once can usually assume that
>people have,  say,  shared libs for libc!  But right now probably most people
>don't have ELF shared ncurses libs so I presume that I shouldn't give away
>binaries that use them.  My assumption is that if I write a program that
>requires ncurses,  the linker will automatically use shared libs if a person
>has them or link statically if they don't so I don't think this is ~too~ much
>of an issue.

Release sources, not binaries. That solves a lot of problems.

Regards,
--
Rene Pijlman

To be is to do.
                -- I. Kant
To do is to be.
                -- A. Sartre
Yabba-Dabba-Doo!
                -- F. Flinstone

 
 
 

1. Trying to compile binutils 2.5.2.6 for ELF

I'm attempting to compile binutils 2.5.2.6, as per the ELF-HOWTO.

I have patched the sources and performed all the edits; when compiling, I get
the following: (line breaks inserted for clarity)

cc -c -O2 -fomit-frame-pointer -DTRAD_CORE  -I. -I. -I./../include
  -DDEFAULT_VECTOR=i386linux_vec -DSELECT_VECS=elvecs
  -DSELECT_ARCHITECTURES=elarchs archures.c
archures.c:444: `elarchs' undeclared here (not in a function)
archures.c:444: initializer element for `archures_init_table[0]' is not
 constant

What am I doing wrong? :-(

Thanks in advance.
--

Trinity College, Cambridge CB2 1TQ         or +44 1223 302522 (home)

2. Apache1.3.0: [error] Symbolic link not allowed

3. linking w/newest binutils (elf)

4. saving...

5. linux binutils == gnu binutils?

6. Printing to an HP Jetdirect card

7. Q: GNU binutils vs. Solaris9 binutils

8. Full Screen Editor for IBM PC

9. Matrox Mystique ands X.

10. Linux XFree86 elf xerver wn't work (Mach32, ELF)

11. SVR4 ELF access library question... (ELF-specific)

12. ELF Linux Distribution on CD-ROM - 100% ELF

13. X86 Solaris ELF compatibility with Linux ELF