Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 205049 - app-emulation/libspectrum-0.2.2-r1 missing pkg-config DEPEND
Summary: app-emulation/libspectrum-0.2.2-r1 missing pkg-config DEPEND
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Marcelo Goes (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 211145
  Show dependency tree
 
Reported: 2008-01-09 12:12 UTC by Evil Compile Person
Modified: 2008-05-12 04:01 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Proposed solution (patch). (libspectrum_pkg-config.patch,309 bytes, patch)
2008-02-23 00:43 UTC, José Manuel Ferrer Ortiz
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Evil Compile Person 2008-01-09 12:12:55 UTC
checking whether to use glib... yes
checking for pkg-config... no
checking for GLIB - version >= 2.0.0... no
*** A new enough version of pkg-config was not found.
*** See http://www.freedesktop.org/software/pkgconfig/
checking for glib-config... no
checking for GLIB - version >= 1.2.0... no
*** The glib-config script installed by GLIB could not be found
*** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GLIB_CONFIG environment variable to the
*** full path to glib-config.
configure: WARNING: glib not found - using internal replacement
[snip]
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/app-emulation/libspectrum-0.2.2-r1/work/libspectrum-0.2.2'
make: *** [all-recursive-am] Error 2
 *
 * ERROR: app-emulation/libspectrum-0.2.2-r1 failed.

Portage 2.1.4_rc14 (default-linux/amd64/2007.0, gcc-4.2.2, glibc-2.7-r1, 2.6.23-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.23-gentoo-r1 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
Timestamp of tree: Mon, 07 Jan 2008 19:00:08 +0000
app-shells/bash:     3.2_p33
dev-lang/python:     2.5.1-r5
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.61-r1
sys-devel/automake:  1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/svn/env /usr/kde/svn/share/config /usr/kde/svn/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="buildpkg distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://localhost/gentoo-portage"
USE="X acl amd64 berkdb bitmap-fonts cli cracklib crypt cups dri fortran gcj gdbm gpm iconv ipv6 isdnlog midi mmx mudflap ncurses nls nptl nptlonly objc openmp pam pcre perl pppd python readline reflection session spl sse sse2 ssl tcpd truetype-fonts type1-fonts unicode xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" 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="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="vga"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 José Manuel Ferrer Ortiz 2008-02-23 00:31:33 UTC
pkg-config is only used in the configure script to detect system's GLIB (will not be detected if pkg-config isn't found).

Though GLIB is in fact optional for this package (because it has an internal version with just the code it needs), we say in the ebuild it's a dependency (I suppose, to avoid GLIB code redundancy), so we pass --with-glib at configure time (unneeded, because it's already the default option).

The thing is, in this version, the internal GLIB code doesn't compile (it does under 0.4.0, at least), as I'll show in a new transcript where you'll be able to see where the error is.

So if you don't have dev-util/pkgconfig installed, then it won't be able to find system's GLIB, and will try to use the internal version instead and therefore it will fail.

I think we shouldn't use that redundant GLIB internal code anyway, so that code doesn't need any modification. Then my proposed solution is to add a build time dependency against dev-util/pkgconfig
Comment 2 José Manuel Ferrer Ortiz 2008-02-23 00:38:27 UTC
This is the transcript that shows clearly where the problem is located:

[...]
*** A new enough version of pkg-config was not found.
*** See http://www.freedesktop.org/software/pkgconfig/
[...]
configure: WARNING: glib not found - using internal replacement
[...]
Making all in myglib
make[2]: se ingresa al directorio `/var/tmp/portage/app-emulation/libspectrum-0.2.2-r1/work/libspectrum-0.2.2/myglib'
/bin/sh ../libtool --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I..   -I/usr/include  -march=athlon64 -O2 -msse3 -fomit-frame-pointer -finline-functions -Wall -c ghash.c
mkdir .libs
 x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include -march=athlon64 -O2 -msse3 -fomit-frame-pointer -finline-functions -Wall -c ghash.c  -fPIC -DPIC -o .libs/ghash.o
ghash.c:49: error: expected specifier-qualifier-list before 'gpointer'
ghash.c:57: error: expected specifier-qualifier-list before 'GHashFunc'
ghash.c:63: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
ghash.c: In function 'g_hash_nodes_destroy':
ghash.c:96: error: 'GHashNode' has no member named 'next'
[...]
Comment 3 José Manuel Ferrer Ortiz 2008-02-23 00:43:16 UTC
Created attachment 144398 [details, diff]
Proposed solution (patch).

Proposed patch to add pkg-config dependency to the ebuild.
Comment 4 Marcelo Goes (RETIRED) gentoo-dev 2008-05-12 04:01:49 UTC
Many thanks Jose, in cvs.