Trying to compile new version of dynamips-0.2.8_rc3 I always get error. Reproducible: Always Steps to Reproduce: 1.emerge -av dynamips 2. 3. Actual Results: LANG=C emerge -av app-emulation/dynamips These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild U ~] app-emulation/dynamips-0.2.8_rc3 [0.2.8_rc2-r1] 0 kB Total: 1 package (1 upgrade), Size of downloads: 0 kB Would you like to merge these packages? [Yes/No] >>> Verifying ebuild manifests >>> Emerging (1 of 1) app-emulation/dynamips-0.2.8_rc3 * dynamips-0.2.8-RC3-community.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking dynamips-0.2.8-RC3-community.tar.gz to /var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work >>> Source unpacked in /var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work >>> Preparing source in /var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community ... * Applying dynamips-0.2.8_rc3-makefile.patch ... [ ok ] * Adjusting Makefiles for X86 ... [ ok ] >>> Source prepared. >>> Configuring source in /var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community ... >>> Source configured. >>> Compiling source in /var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community ... make -j2 make -C stable make[1]: Entering directory `/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community/stable' Linking rom2c Compiling ../common/mempool.c Compiling ../common/registry.c Compiling ../common/rbtree.c Compiling ../common/hash.c Compiling ../common/sbox.c Compiling ../common/utils.c Compiling ../common/parser.c ../common/utils.c: In function 'm_fgets': ../common/utils.c:268:9: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result Compiling ../common/gen_uuid.c Compiling ../common/plugin.c Compiling ../common/ptask.c Compiling ../common/timer.c Compiling ../common/crc.c Compiling ../common/base64.c Compiling ../common/net.c Compiling ../common/net_io.c Compiling ../common/net_io_bridge.c Compiling ../common/net_io_filter.c Compiling ../common/atm.c Compiling ../common/atm_vsar.c Compiling ../common/atm_bridge.c Compiling ../common/frame_relay.c Compiling ../common/eth_switch.c Compiling ../common/dynamips.c Compiling ../common/insn_lookup.c ../common/insn_lookup.c:318:12: warning: 'ilt_dump' defined but not used ../common/insn_lookup.c: In function 'ilt_store_rfct': ../common/insn_lookup.c:352:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result ../common/insn_lookup.c:353:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result ../common/insn_lookup.c:354:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result ../common/insn_lookup.c:356:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result Compiling vm.c Compiling cpu.c vm.c:114:13: warning: 'vm_object_rebuild_list' defined but not used vm.c: In function 'vm_nvram_extract_config': vm.c:962:10: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result Compiling ../common/jit_op.c Compiling mips64.c Compiling mips64_mem.c mips64.c: In function 'mips64_sym_load_file': mips64.c:1091:12: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result mips64.c: In function 'mips64_restore_state': mips64.c:767:12: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result mips64_mem.c: In function 'mips64_mts32_slow_lookup': mips64_mem.c:391:2: warning: label 'err_address' defined but not used Compiling mips64_cp0.c Compiling mips64_jit.c mips64_jit.c:257:33: warning: 'insn_jump_find' defined but not used Compiling mips64_exec.c mips64_jit.c: In function 'mips64_jit_run_cpu': mips64_x86_trans.h:56:4: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm' mips64_x86_trans.h:56:4: error: 'asm' operand has impossible constraints make[1]: *** [mips64_jit.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community/stable' make: *** [dynamips.stable] Error 2 emake failed * ERROR: app-emulation/dynamips-0.2.8_rc3 failed (compile phase): * died running emake, base_src_make * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 2284: Called base_src_compile * environment, line 249: Called base_src_make * environment, line 287: Called die * The specific snippet of code: * emake "$@" || die "died running emake, $FUNCNAME"; * * If you need support, post the output of 'emerge --info =app-emulation/dynamips-0.2.8_rc3', * the complete build log and the output of 'emerge -pqv =app-emulation/dynamips-0.2.8_rc3'. * The complete build log is located at '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/temp/environment'. * S: '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community' >>> Failed to emerge app-emulation/dynamips-0.2.8_rc3, Log file: >>> '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/temp/build.log' * Messages for package app-emulation/dynamips-0.2.8_rc3: * ERROR: app-emulation/dynamips-0.2.8_rc3 failed (compile phase): * died running emake, base_src_make * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 2284: Called base_src_compile * environment, line 249: Called base_src_make * environment, line 287: Called die * The specific snippet of code: * emake "$@" || die "died running emake, $FUNCNAME"; * * If you need support, post the output of 'emerge --info =app-emulation/dynamips-0.2.8_rc3', * the complete build log and the output of 'emerge -pqv =app-emulation/dynamips-0.2.8_rc3'. * The complete build log is located at '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/temp/environment'. * S: '/var/tmp/portage/app-emulation/dynamips-0.2.8_rc3/work/dynamips-0.2.8-RC3-community'
Created attachment 287885 [details] emerge --info Currrent emerge --info from failing machine.
Add "-fomit-frame-pointer" to your CFLAGS. This will fix it. See this thread for more details: http://forums.gentoo.org/viewtopic-t-889404-start-0.html
(In reply to comment #2) > Add "-fomit-frame-pointer" to your CFLAGS. This will fix it. See this thread > for more details: http://forums.gentoo.org/viewtopic-t-889404-start-0.html That works. Thank you.
Defaults have since been changed; GCC 4.6 will default to -fomit-frame-pointer even on 32-bit X86 machines. This means that unless you add -fno-omit-frame-pointer to CFLAGS explicitly, you can no longer hit this.