media-libs/gd has to be emerged manually. Reproducible: Always Steps to Reproduce: 1. USE="gd" emerge dev-lang/php Actual Results: Says gd.h cannot be found. Expected Results: Should pull in gd, then emerge PHP. emerge --info dev-lang/php Portage 2.2.01.20430-prefix (prefix/darwin/macos/10.7/x64, gcc-4.2.1, unavailable, 11.4.0 i386) ================================================================= System Settings ================================================================= System uname: Darwin-11.4.0-i386-64bit Timestamp of tree: Sun, 03 Jun 2012 05:52:02 +0000 app-shells/bash: 4.2_p28::gentoo_prefix dev-lang/python: 2.7.3-r2::gentoo_prefix dev-util/pkgconfig: 0.26::gentoo_prefix sys-devel/autoconf: 2.69::gentoo_prefix sys-devel/automake: 1.11.5::gentoo_prefix sys-devel/gcc-config: 1.5-r2::gentoo_prefix sys-devel/libtool: 2.4.2::gentoo_prefix sys-devel/make: 3.82::gentoo_prefix Repositories: gentoo_prefix Installed sets: ACCEPT_KEYWORDS="~x64-macos" ACCEPT_LICENSE="*" CBUILD="x86_64-apple-darwin11" CFLAGS="-O2 -pipe -march=core2" CHOST="x86_64-apple-darwin11" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/portage /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -pipe -march=core2" DISTDIR="/Users/tatsh/gentoo/usr/portage/distfiles" FEATURES="assume-digests binpkg-logs collision-protect distlocks ebuild-locks fixlafiles force-prefix news nostrip parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_GB.UTF-8" LDFLAGS="-Wl,-dead_strip_dylibs" LINGUAS="en_GB" MAKEOPTS="-j3" PKGDIR="/Users/tatsh/gentoo/usr/portage/packages" PORTAGE_CONFIGROOT="/Users/tatsh/gentoo/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/Users/tatsh/gentoo/var/tmp" PORTDIR="/Users/tatsh/gentoo/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix" USE="aqua bash-completion cjk coreaudio cracklib cxx mmx mmxext modules ncurses nls objc objc++ prefix readline sse sse2 ssl unicode vim-syntax x64-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 cgi cgid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="Darwin" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse" KERNEL="Darwin" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en_GB" PHP_TARGETS="php5-4" PYTHON_TARGETS="python2_7" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Also this is with PHP 5.4.3 and =media-libs/gd-2.0.35-r3 (the latest available in the prefix and both are marked stable).
hmmm, yeah, @php any idea here? can't imagine this is a mainline problem...
PHP does not use system GD. It uses a bundled version, which is actually still maintained and has a lot of additional features. System GD is at least five years old.
Question is why it starts looking for a gd.h anywhere on the system. I would need to see some logs and such to find out what is going on.
Thanks for the insight! That means it should just work. I can't reproduce, so maybe it was a glitch. Will close.
(In reply to comment #5) > Thanks for the insight! That means it should just work. I can't reproduce, > so maybe it was a glitch. Will close. I would like to just add a note that it *can* use system gd if you add ./configure --enable-gd=/usr, but the php ebuilds specifically do not add anything, meaning it should use the bundled version. Something could still for some obscure reason trigger the use of system gd.
Just adding that this now works for me in the latest ebuild for 5.4. I can finally use PHP the exact same way I do on Linux on Gentoo Prefix.