Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: fsck seg fault failure on vmware -i386?

>   | I want to build a debug version of libc (really just the libc/time
>   | routines).
> I'd still recommend just editing libc's Makefile, and adding either
> COPTS+=-g or DBG=-g to it - that simple change is easy to make and
> hard to get wrong by accident...
>   | Where would the resultant libc.a end up?
>   | I assume it would end up in /usr/obj/lib/libc?
> Yes, if there's a libc_g.a use that, otherwise if you had -g in the
> COPTS then libc.a should have the debug symbols.   It should also get
> copied to ${DESTDIR}/lib/libc.c (not sure if the libc_g.a version, if
> created, will go in ${DESTDIR} or not).
>   | And how do I get my debug version of fsck_ffs to use the debug
>   | version of libc?
> Add DPADD+=/path/to/your/libc.a
> after the existing DPADD+= line in fsck_ffs's Makefile.

After waaay to long, I finally got my VM rebuilt using -current from
1/15/2010. It sure would be nice if there was some sort of nuclear
cvs command to ignore all conflicts and just make my stinkin' tree
look like the source tree.
I tried: cvs up -pADC -D "January 15, 2010" src
Had to fight through conflicts and had to manually delete some other
entries and re-run in the source tree to get a distribution to compile.

- So system is current(1/15/2010)
   o prior to Robert/Christos fsck changes
   o Installed the system so sources and libraries are consistent

- I've compiled libc with DBG=-g in the libc Makefile.
   o This did not produce libc_g.a in /usr/obj/lib/libc
   o This did produce a libc.a that was about 2x the size
     of/lib/libc.a so I assume it has symbols and is debug (?)

- I've compiled fsck_ffs with CPPFLAGS+= -g and
  DPADD+=/usr/obj/lib/libc/libc.a in the Makefile

- I've run: ldd ./fsck_ffs which gives
    o ./fsck_ffs:
        -lc.12 => /lib/
        -lutil.7 => /lib/
        -lprop.1 => /lib/
    o Should I be concerned that -lc is still referenced rather
      than my debug version which I manually linked in?

- I've run: ldd /usr/bin/gdb which gives:
   o /usr/bin/gdb:
        -lc.12 => /usr/lib/
        -ltermcap.0 => /usr/lib/
        -lcurses.7 => /usr/lib/
        -lintl.1 => /usr/lib/
        -lm.0 => /usr/lib/
        -lm.0 => /usr/lib/
        -lkvm.6 => /usr/lib/
   o Some of these are common in /lib some not.
   o Do I just need to move these (and associated/corrected links) to
     /lib? Or do I create a temp directory at root and create a temporary
     /usr/lib directory once I come up in single user without the real
     /usr partition mounted?

- So, I think I'm almost there...just need a little clarity on how
  I close this out...thanks for all the patience so far!


Home | Main Index | Thread Index | Old Index