In bug 287245 I was able to make eix seg fault. http://bugs.gentoo.org/show_bug.cgi?id=287245 It would be nice if I could provide better backtraces in my bug reports. I have been told that I can do this with the "FEATURE = installsources" option in make.conf. I was also told that inorder to use that feature I needed to emerge debugedit. I have no ebuild for debug editon my prefix system. Reproducible: Always Steps to Reproduce: 1. N/A 2. 3. Actual Results: n/a Expected Results: n/a <emerge info> [lambda: Gentoo]$ emerge --info Portage 2.2.00.14200-prefix (prefix/darwin/macos/10.6/x86, gcc-4.2.1, unavailable, 10.0.0 i386) ================================================================= System uname: Darwin-10.0.0-i386-32bit Timestamp of tree: Thu, 01 Oct 2009 15:18:13 +0000 distcc 2.18.5-Apple.1 i386-apple-darwin10.0 (protocols 1 and 2) (default port 3632) [disabled] app-shells/bash: 4.0_p33 dev-lang/python: 2.6.2-r2 sys-devel/autoconf: 2.63-r01.1 sys-devel/automake: 1.10.2-r00.1, 1.11 sys-devel/gcc-config: 1.4.1-r00.2 sys-devel/libtool: 2.2.6a-r00.2 ACCEPT_KEYWORDS="~x86-macos" CBUILD="i686-apple-darwin10" CFLAGS="-ggdb3 -O2 -pipe -march=nocona" CHOST="i686-apple-darwin10" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/terminfo" CPPFLAGS="-I/Users/steves/Library/Gentoo/usr/include" CXXFLAGS="-ggdb3 -O2 -pipe -march=nocona" DISTDIR="/Users/steves/Library/Gentoo/usr/portage/distfiles" FEATURES="assume-digests collision-protect distlocks fixpackages nostrip parallel-fetch preserve-libs protect-owned sfperms splitdebug strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LANG="en_US.UTF-8" LDFLAGS="-Wl,-search_paths_first -L/Users/steves/Library/Gentoo/usr/lib -L/Users/steves/Library/Gentoo/lib" PKGDIR="/Users/steves/Library/Gentoo/usr/portage/packages" PORTAGE_CONFIGROOT="/Users/steves/Library/Gentoo/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/Users/steves/Library/Gentoo/var/tmp" PORTDIR="/Users/steves/Library/Gentoo/usr/portage" SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix" USE="aqua coreaudio cracklib mmx mmxext modules ncurses objc objc++ prefix readline sse sse2 ssl x86-macos zlib" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="Darwin" INPUT_DEVICES="keyboard mouse" KERNEL="Darwin" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" Unset: CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY </emerge info>
Please test it :) We have so many bugs that we can't get to every package =/ http://www.gentoo.org/proj/en/gentoo-alt/prefix/ecopy.xml
Gave this a shot PORTDIR_OVERLAY="{$EPREFIX}/usr/local/portage" ~/Library/Gentoo/usr/portage/scripts/ecopy dev-util/debugedit ekeyword ~x86-macos debugedit-4.4.6-r1.ebuild FEATURES=test ebuild debugedit-4.4.6-r1.ebuild test # digest issue ebuild debugedit-4.4.6-r1.ebuild digest FEATURES=test ebuild debugedit-4.4.6-r1.ebuild test At this point I get build errors, 1st large issue is missing headers: debugedit.c:23:22: error: byteswap.h: No such file or directory debugedit.c:24:20: error: endian.h: No such file or directory debugedit.c:26:19: error: error.h: No such file or directory debugedit.c:36:18: error: gelf.h: No such file or directory debugedit.c:37:19: error: dwarf.h: No such file or directory Is there already a standard way to handle missing headers? (Although to be fair this is more than missing headers, OS X actually implements these with different names) If not could we create a <something>-headers ebuild specifically for this prefix? This would be a set of headers that wrap OS X includes and define macros/inline function that define what the linux apps expect to exist. For example this missing byteswap header: http://cgit.freedesktop.org/xorg/xserver/tree/GL/glx/glxbyteorder.h?id=cdf6b15f039c4905d8d54152153b0a3ecd7aba55;id2=415e49b940bba2d08870db410ebb47d2add5d836 Could be pulled in and included in a byteswap.h header installed in $EPREFIX/usr/include/
Thanks for your analysis. Too little time to implement such ideas. I'm afraid it will have to hold for some time. Sorry.
You can forget about debugedit ever working on OSX. This package seems to be geared towards ELF systems, and OSX/Darwin uses MACHO. If eix devs want a backtrace from you, you better reemerge eix with CFLAGS="-g" FEATURES="keepwork nostrip" and then start eix from gdb: gdb --args eix args... and then when the debugger catches the segfault, print the backtrace using "bt".