gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib64/php4/include/php -I/usr/lib64/php4/include/php/main -I/usr/lib64/php4/include/php/TSRM -I/usr/lib64/php4/include/php/Zend -DHAVE_CONFIG_H -march=nocona -O2 -fomit-frame-pointer -pipe -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_restore.c -fPIC -o .libs/ea_restore.o /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_restore.c: In function `restore_class_entry': /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_restore.c:906: error: too many arguments to function `zend_do_inheritance' make: *** [ea_restore.lo] Error 1 make: *** Waiting for unfinished jobs.... gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib64/php4/include/php -I/usr/lib64/php4/include/php/main -I/usr/lib64/php4/include/php/TSRM -I/usr/lib64/php4/include/php/Zend -DHAVE_CONFIG_H -march=nocona -O2 -fomit-frame-pointer -pipe -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_store.c -fPIC -o .libs/ea_store.o gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib64/php4/include/php -I/usr/lib64/php4/include/php/main -I/usr/lib64/php4/include/php/TSRM -I/usr/lib64/php4/include/php/Zend -DHAVE_CONFIG_H -march=nocona -O2 -fomit-frame-pointer -pipe -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_info.c -fPIC -o .libs/ea_info.o !!! ERROR: dev-php4/eaccelerator-0.9.5_rc1 failed. Call stack: ebuild.sh, line 1546: Called dyn_compile ebuild.sh, line 937: Called src_compile eaccelerator-0.9.5_rc1.ebuild, line 56: Called php-ext-source-r1_src_compile php-ext-source-r1.eclass, line 57: Called die !!! Unable to make code !!! If you need support, post the topmost build error, and the call stack if relevant.
Which version of PHP do you have installed?
php 4.4.4-r4 lastest stable
I too have been hit by this bug. Trying to compile dev-php4/eaccelerator-0.9.5_rc1 with php-4.4.4-r4, the error message I get is identical. My emerge --info, if it helps. # emerge --info Portage 2.1.1 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r3, 2.6.16-hardened-r11 i686) ================================================================= System uname: 2.6.16-hardened-r11 i686 Pentium II (Deschutes) Gentoo Base System version 1.12.5 Last Sync: Mon, 02 Oct 2006 15:50:01 +0000 app-admin/eselect-compiler: [Not Present] dev-java/java-config: [Not Present] dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.13-r4 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium2 -O2 -pipe -fomit-frame-pointer -frename-registers -ftracer -fforce-addr" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-march=pentium2 -O2 -pipe -fomit-frame-pointer -frename-registers -ftracer -fforce-addr -fvisibility-inlines-hidden" DISTDIR="/srv/distfiles" FEATURES="autoconfig distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict userfetch userpriv usersandbox" GENTOO_MIRRORS="http://ftp.heanet.ie/pub/gentoo/ http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/ http://www.mirror.ac.uk/mirror/www.ibiblio.org/ http://gentoo.oregonstate.edu/ http://distfiles.gentoo.org/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" LDFLAGS="-Wl,-O1 -Wl,--enable-new-dtags -Wl,--sort-common -Wl,--as-needed -Wl,--relax" LINGUAS="" MAKEOPTS="-j2" PKGDIR="/usr/local/portage/packages" PORTAGE_RSYNC_EXTRA_OPTS="--progress --timeout=500 --exclude='/xfce-**' --exclude='/gnustep-**'" 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'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 alsa apache2 apm arts bitmap-fonts bzip2 caps cli crypt dlloader dri eds elibc_glibc emboss encode esd foomaticdb gd gdbm gif gnome gstreamer gtk2 imlib input_devices_evdev input_devices_keyboard input_devices_mouse isdnlog jpeg kde kernel_linux libg++ libwww mad mikmod motif mp3 mpeg ncurses no-old-linux nptl nptlonly ogg opengl oss pcre png pppd qt3 qt4 quicktime readline reflection sdl session spf spl ssl tcpd threads tiff truetype truetype-fonts type1-fonts udev urandom userland_GNU userlocales video_cards_apm video_cards_ark video_cards_ati video_cards_chips video_cards_cirrus video_cards_cyrix video_cards_dummy video_cards_fbdev video_cards_glint video_cards_i128 video_cards_i740 video_cards_i810 video_cards_imstt video_cards_mga video_cards_neomagic video_cards_nsc video_cards_nv video_cards_rendition video_cards_s3 video_cards_s3virge video_cards_savage video_cards_siliconmotion video_cards_sis video_cards_sisusb video_cards_tdfx video_cards_tga video_cards_trident video_cards_tseng video_cards_v4l video_cards_vesa video_cards_vga video_cards_via video_cards_vmware video_cards_voodoo vorbis xml xml2 xmms xorg xv zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL
Builds fine for me on ~x86 against both dev-lang/php-4.4.4-r4 and dev-lang/php-5.1.6-r4.
I am running amd64
Same issue here : gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib/php4/include/php -I/usr/lib/php4/include/php/main -I/usr/lib/php4/include/php/TSRM -I/usr/lib/php4/include/php/Zend -DHAVE_CONFIG_H -march=pentium4 -O3 -pipe -fomit-frame-pointer -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_restore.c -fPIC -o .libs/ea_restore.o /bin/sh /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/libtool --mode=compile gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib/php4/include/php -I/usr/lib/php4/include/php/main -I/usr/lib/php4/include/php/TSRM -I/usr/lib/php4/include/php/Zend -DHAVE_CONFIG_H -march=pentium4 -O3 -pipe -fomit-frame-pointer -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_dasm.c -o ea_dasm.lo /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_restore.c: In function `restore_class_entry': /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_restore.c:906: error: too many arguments to function `zend_do_inheritance' make: *** [ea_restore.lo] Error 1 make: *** Waiting for unfinished jobs.... gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib/php4/include/php -I/usr/lib/php4/include/php/main -I/usr/lib/php4/include/php/TSRM -I/usr/lib/php4/include/php/Zend -DHAVE_CONFIG_H -march=pentium4 -O3 -pipe -fomit-frame-pointer -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_info.c -fPIC -o .libs/ea_info.o gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib/php4/include/php -I/usr/lib/php4/include/php/main -I/usr/lib/php4/include/php/TSRM -I/usr/lib/php4/include/php/Zend -DHAVE_CONFIG_H -march=pentium4 -O3 -pipe -fomit-frame-pointer -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_store.c -fPIC -o .libs/ea_store.o gcc -I. -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -DPHP_ATOM_INC -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/include -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/main -I/var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1 -I/usr/lib/php4/include/php -I/usr/lib/php4/include/php/main -I/usr/lib/php4/include/php/TSRM -I/usr/lib/php4/include/php/Zend -DHAVE_CONFIG_H -march=pentium4 -O3 -pipe -fomit-frame-pointer -c /var/tmp/portage/eaccelerator-0.9.5_rc1/work/eaccelerator-0.9.5-rc1/ea_dasm.c -fPIC -o .libs/ea_dasm.o !!! ERROR: dev-php4/eaccelerator-0.9.5_rc1 failed. Call stack: ebuild.sh, line 1546: Called dyn_compile ebuild.sh, line 937: Called src_compile eaccelerator-0.9.5_rc1.ebuild, line 56: Called php-ext-source-r1_src_compile php-ext-source-r1.eclass, line 57: Called die !!! Unable to make code !!! If you need support, post the topmost build error, and the call stack if relevant.
Created attachment 99243 [details, diff] Patch for eaccelerator-0.9.5 when compiled for php4 Seems there is an #ifend that's a little too soon. Found the fix on some Russian site: http://www.securitylab.ru/forum/read.php?FID=25&TID=23825
Created attachment 99263 [details] fixed ebuild for php4 at least. fixed ebuild for php4 at least. works on my system. based on diff
this worked for me installing it from portage overlay
(In reply to comment #8) > Created an attachment (id=99263) [edit] > fixed ebuild for php4 at least. > > fixed ebuild for php4 at least. works on my system. based on diff > Great, worked for me too. I had to switch from 0.9.4 which was removed from portage recently
Ok, sounds good. More testing required, maybe someone can review ebuild and commit fix to official tree?
compiling for php5 shouldn't be affected since it has access the zend2 inheritance call
And by looking from portage, there is different versio on eaccelerator for php5 * dev-php4/eaccelerator [ Masked ] Latest version available: 0.9.5_rc1 Latest version installed: 0.9.5_rc1 Size of files: 117 kB Homepage: http://www.eaccelerator.net/ Description: A PHP Accelerator & Encoder. License: GPL-2 * dev-php5/eaccelerator [ Masked ] Latest version available: 0.9.5_rc1 Latest version installed: [ Not Installed ] Size of files: 117 kB Homepage: http://www.eaccelerator.net/ Description: A PHP Accelerator & Encoder. License: GPL-2
That's the same eaccelerator source code, different ebuild for PHP5, but refering to my previous remark, this patch will not affect the compilation of that php5 ebuild, meaning there is no need to apply this patch to the ebuild for php5
Looks like that, adding: if ! has_version '=dev-lang/php-5.0*' ; then # fix bug #149701 epatch ${FILESDIR}/eaccelerator-0.9.5_rc1-build-fix.patch fi
Created attachment 99314 [details] eaccelerator-fixed-ebuild-php4-only eaccelerator-fixed-ebuild-php4-only
Please test with dev-php4/eaccelerator-0.9.5.
(In reply to comment #17) > Please test with dev-php4/eaccelerator-0.9.5. > What you mean? this kind if ebuild is not yet in my portage?
Give your rsync mirror some time to get it. In a couple of hours do "emerge --sync" and you will have the package.
(In reply to comment #17) > Please test with dev-php4/eaccelerator-0.9.5. > Works with eaccelerator-0.9.5 source without any patching required. Since eaccelerator-0.9.5-rc1 is broken with php4, fix should be applied or new eaccelerator-0.9.5 should be pushed soon to portage. (In reply to comment #19) > Give your rsync mirror some time to get it. In a couple of hours do "emerge > --sync" and you will have the package. > works for me.
it just works?
Could someone reopen this one, since the patch is applied wrongly. Has anybody thought of concurrent php emerges? If someone has both php4 and php5 installed, then compiling eaccelerator afterwards won't succeed for php4 since !has_version '=dev-lang/php-5.0*' returns 'false' in that case.
not needed, because dev-php4/eaccelerator-0.9.5 does not use the patch as you can see from ebuild source dev-php4/eaccelerator-0.9.5.ebuild.