Re: Are we on?
Stephen <[email protected]> Tue, 22 Dec 2009 19:24:40 -0500
| Newsgroups | gmane.comp.debugging.ups.user |
|---|---|
| Message-ID | <[email protected]> |
I haven't tried these patches, but it looks like dwarf support is longing. On my architecture, if I try to ups itself, I get the following - Fatal internal error: attempt to reference nonexistent object (aborting) But on small simple apps, it works. I'm running uname -a Linux myhost.com 2.6.31.6-166.fc12.x86_64 #1 SMP Wed Dec 9 10:46:22 EST 2009 x86_64 x86_64 x86_64 GNU/Linux gcc -v Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: ../gcc-4.3.4/configure --prefix=/usr/local --enable-languages=c,c++ --with-tune=generic --with-arch_32=i686 --enable-shared --enable-threads=posix --enable-checking=release Thread model: posix gcc version 4.3.4 (GCC) -- Stephen On 12/21/2009 08:54 PM, Callum Gibson wrote: > On 18Dec09 15:34, Bakul Shah wrote: > }I'd love to see the FreeBSD port of ups get resurrected. Any > }chance to get the patches? Thanks. > > I received word back from Tom Hughes. He still makes commits to sourceforge. > > Since there has been some interest, here are my patches to get things > going under FreeBSD/i386 RELENG_7. Should also work on 8.X. > > I've attached 2 separate diffs. The first diffs.freebsd, was to get it > to compile cleanly on FreeBSD, however I believe some of the diffs are > not FreeBSD specific. In particular, the cleanup around the definition > of some of the Elf_* variables to avoid some of the weirdness (like Elf32 > functions being defined to Elf64 functions and vice versa) depending on > the architecture. In any case, it should be harmless to apply the diffs > under any operating system. > > I hasten to add, I have not tried this on FreeBSD/amd64 as yet, but will > get around to that. > > The second file, diffs.fix, addresses some bugs with the new dwarf code, > mostly in the form of uninitialised memory, but also completing the refactoring > of a new internal type that was introduced. I was getting crashes when > expanding struct members until I tracked these down. > > Under FreeBSD, you need to use "configure --enable-elf" to make it > work properly. Most BSD based systems have moved to elf from a.out format > now whereas ups assumes a.out still. > > After running configure you need to edit ifdefs.h and change HAVE_GLOBAL_IOB > to 0 because FreeBSD's stdio doesn't have an accessible IOB structure for > ups to frob around in, in spite of what configure thinks. The test for > "__sF.*" in configure.in is too general for FreeBSD's header. Probably > "\<__sF\>" would be better. > > Finally, you'll need to use "patch -p1" to use these diffs. > > C > >