[MacPorts] #33862: Qemu fails to build on ppc-G4
#33862: Qemu fails to build on ppc-G4 --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Using: {{{ sudo port upgrade outdated }}} qemu failed to build due to: {{{ :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_emulators_qemu/qemu/work/qemu-1.0.1/tcg/tci /tcg-target.h:161: error: redefinition of ‘flush_icache_range’ :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_emulators_qemu/qemu/work/qemu-1.0.1 /cache-utils.h:16: error: previous definition of ‘flush_icache_range’ was here :info:build make[1]: *** [tcg/tcg.o] Error 1 :info:build make[1]: *** Waiting for unfinished jobs.... :info:build make: *** [subdir-i386-softmmu] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_emulators_qemu/qemu/work/qemu-1.0.1' :info:build shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_emulators_qemu/qemu/work/qemu-1.0.1" && /usr/bin/make -j2 -w all " returned error 2 :error:build Target org.macports.build returned: shell command failed (see log for details) :debug:build Backtrace: shell command failed (see log for details) while executing "command_exec build" (procedure "portbuild::build_main" line 8) invoked from within "$procedure $targetname" :info:build Warning: the following items did not execute (for qemu): org.macports.install org.macports.build org.macports.destroot :notice:build Log for qemu is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_emulators_qemu/qemu/main.log }}} The platform is a dual 1.73 GHz PowerPC G4 running MacOS 10.5.8. Attached is the build log. -- Ticket URL: <https://trac.macports.org/ticket/33862> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Comment(by jruschme@…): This is apparently an upstream problem which has been fixed upstream. See: [https://lists.gnu.org/archive/html/qemu-devel/2012-03/msg00769.html] -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Comment(by trog24@…): qemu failed to build today (19 April) for the redefinition problem. -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Comment(by trog24@…): qemu failed to upgrade because of redefinition problem on 9 June 2012 following a MacPorts upgrade and cleaning out the old qemu. -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Comment(by khepler@…): This problem still exists in 1.1.1-1. It's unclear if Qemu upstream really knows about this. The messages I found on the dev list seemed rather confused themselves. I'm attaching the portfile I modified for 1.1.1-1 along with a patch for this problem and an updated configure patch. I removed the cocoa-uint16 patch because it no longer looks relevant. It builds on PowerPC Leopard, but needs more testing. -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Comment(by ironstorm@…): Was looking to get qemu 1.1.1/arm running to try to work on some Raspberry Pi images. Found the Portfile attached here (thanks btw), looks like the patch-tcg- target-h.diff patch needs to be skipped on OSX 10.8/intel. When it's included you get this: {{{ LINK arm-softmmu/qemu-system-arm Undefined symbols for architecture x86_64: "_flush_icache_range", referenced from: _tcg_prologue_init in tcg.o _tcg_gen_code in tcg.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[1]: *** [qemu-system-arm] Error 1 make: *** [subdir-arm-softmmu] Error 2 }}} -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ --------------------------------+------------------------------------------- Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Keywords: | Port: qemu --------------------------------+------------------------------------------- Comment(by khepler@…): Replying to [comment:7 ironstorm@…]:
Found the Portfile attached here (thanks btw), looks like the patch- tcg-target-h.diff patch needs to be skipped on OSX 10.8/intel.
Thanks for testing! Sorry it took a little time, but I tracked the actual problem down to the --enable-tcg-interpreter configure flag. Removing this flag fixes the issue I thought I was solving with the tcg- target-h.patch file, but it appears to be required for the clang/llvm toolchain (e.g. Xcode 4). Regardless, that patch seems to produces broken binaries on my system even though it completed the build, so it's right out. (see: "Needs testing" :) I'm increasing the port's revision number in case anyone else built the broken version. This was entirely my fault; I slightly misread the compiler error. Sorry about that. Would you be kind enough to test this new Portfile on 10.8? It also needs to be tested on 10.6 and 10.7, if anyone could oblige... -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#33862: qemu: error: redefinition of ‘flush_icache_range’ ---------------------------------+------------------------------------------ Reporter: trog24@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.0.4 Resolution: fixed | Keywords: Port: qemu | ---------------------------------+------------------------------------------ Changes (by raimue@…): * status: new => closed * resolution: => fixed Comment: Should be fixed after r97499 which upgraded to qemu 1.2.0 and enabled use of TCG instead of the TCG interpreter. -- Ticket URL: <https://trac.macports.org/ticket/33862#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts