atuin root # qpkg -nc -l libspectrum app-emulation/libspectrum-0.1.1 CONTENTS: /usr /usr/lib /usr/lib/libspectrum.so.0.1.0 /usr/lib/libspectrum.so.0 -> libspectrum.so.0.1.0 /usr/lib/libspectrum.so -> libspectrum.so.0.1.0 /usr/lib/libspectrum.la /usr/lib/libspectrum.a /usr/include /usr/include/libspectrum.h /usr/share /usr/share/doc /usr/share/doc/libspectrum-0.1.1 /usr/share/doc/libspectrum-0.1.1/AUTHORS.gz /usr/share/doc/libspectrum-0.1.1/README.gz /usr/share/doc/libspectrum-0.1.1/ChangeLog.gz /usr/share/doc/libspectrum-0.1.1/THANKS.gz /usr/share/doc/libspectrum-0.1.1/libspectrum.txt.gz atuin root # emerge fuse Calculating dependencies ...done! >>> emerge (1 of 1) app-emulation/fuse-0.6.0.1 to / >>> md5 src_uri ;-) fuse-0.6.0.1.tar.gz >>> Unpacking source... >>> Unpacking fuse-0.6.0.1.tar.gz to /usr/portage/tmp/portage/fuse-0.6.0.1/work >>> Source unpacked. creating cache ./config.cache checking for a BSD compatible install... /bin/install -c checking whether build environment is sane... yes checking whether make sets ${MAKE}... yes checking for working aclocal-1.4... found checking for working autoconf... found checking for working automake-1.4... found checking for working autoheader... found checking for working makeinfo... found checking for gcc... gcc checking whether the C compiler (gcc -march=athlon-xp -O3 -pipe -fomit-frame-poi nter ) works... yes checking whether the C compiler (gcc -march=athlon-xp -O3 -pipe -fomit-frame-poi nter ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking for ranlib... ranlib checking for perl... /usr/bin/perl checking how to run the C preprocessor... gcc -E checking for flex... flex checking for flex... (cached) flex checking for yywrap in -lfl... yes checking lex output file root... lex.yy checking whether yytext is a pointer... yes checking for bison... bison -y checking whether byte ordering is bigendian... no checking for ANSI C header files... yes checking for sys/soundcard.h... yes checking for sys/audioio.h... no checking for siginfo.h... no checking for working const... yes checking for inline... inline checking for getopt_long... yes checking size of char... 1 checking size of short... 2 checking size of int... 4 checking size of long... 4 checking size of long long... 8 checking for zlibVersion in -lz... yes checking whether svgalib UI requested... no checking whether framebuffer UI requested... no checking whether SDL UI requested... no checking whether GTK UI requested... no checking for X... libraries /usr/X11R6/lib, headers /usr/X11R6/include checking for dnet_ntoa in -ldnet... no checking for dnet_ntoa in -ldnet_stub... no checking for gethostbyname... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for IceConnectionNumber in -lICE... yes checking for gethostname... yes checking for connect... (cached) yes checking for X11/extensions/XShm.h... yes checking for XShmAttach in -lXext... yes checking whether to use glib... no checking for libspectrum.h... no configure: error: Sorry - I need libspectrum to be available !!! ERROR: app-emulation/fuse-0.6.0.1 failed. !!! Function econf, Line 324, Exitcode 1 !!! econf failed Reproducible: Always Steps to Reproduce: 1. Emerge libspectrum if not already installed. 2. Attempt to emerge fuse Actual Results: Failed ./configure step Expected Results: Should proceed to build correctly.
The configure script is finding libspectrum.h ok. This error is due to mismatched compiles between the libspectrum-0.1.1 and fuse-0.6.0.1 packages. The libspectrum-0.1.1 ebuild contains econf `use_with gnome glib` || die so libspectrum is compiled using glib if gnome is included in USE flags. The end result is that the libspectrum.h header file contains: #include <glib.h> However, the fuse-0.6.0.1 ebuild contains econf \ --without-gtk --without-glib \ --without-plus3-disk \ || die so the configure script does not run checks for glib and subsequently dies when it finds libspectrum.h and sees #include <glib.h>. There are a variety of fixes for this bug. One is to add a gnome USE flag to the fuse-0.6.0.1 ebuild and use it to compile using glib. It could also be used to compile the gtk+ interface: econf \ `use_with gnome glib gtk` \ --without-plus3-disk \ || die The important thing is that both libspectrum and fuse are compiled with the same glib option.
Oops, an embarrassing correction needs to be made. The suggested fix should have been: econf \ `use_with gnome glib` \ `use_with gnome gtk` \ --without-plus3-disk \ || die I've also noticed that the local variable "guiflag" is declared and set to the applicable interface depending on what USE flags were specified. However this variable is never used. It should be incorporated into econf: econf \ ${guiflag} \ .....
Thanks for taking the time to look at this, FWIW I've just built libspectrum with USE="-gnome" & fuse appeared to emerge correctly. It doesn't run correctly however: fuse: error: Unknown display size/image size 0/1 I'll try the suggested changes to the ebuild later today.
fixed in cvs with latest versions