Ticket #12352 (closed defect: fixed)
BUG: XaoS 3.1.2 doesn't compile on MBP
| Reported by: | macforge@… | Owned by: | macports-tickets@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | |
| Keywords: | Cc: | macforge@…, ryandesign@… | |
| Port: | xaos |
Description
In short:
tigger:~> sudo port install xaos
Password:
---> Fetching xaos
---> Attempting to fetch XaoS-3.1.2.tar.gz from http://downloads.sourceforge.net/xaos
---> Verifying checksum(s) for xaos
---> Extracting xaos
---> Configuring xaos
---> Building xaos with target all
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2" && make all " returned error 2
Command output: from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/filter.h:319,
from autopilot.c:39:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/formulas.h:39: error: array type has incomplete element type
make[2]: *** [autopilot.o] Error 1
gcc -I/opt/local/include -O2 -I/usr/X11R6/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include -c -o drivers.o drivers.c
gcc -I/opt/local/include -O2 -I/usr/X11R6/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include -c -o ui.o ui.c
In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/fractal.h:32,
from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/filter.h:319,
from ui.c:55:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/formulas.h:39: error: array type has incomplete element type
make[2]: *** [ui.o] Error 1
gcc -I/opt/local/include -O2 -I/usr/X11R6/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include -c -o png.o png.c
In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/fractal.h:32,
from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/filter.h:319,
from png.c:18:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include/formulas.h:39: error: array type has incomplete element type
make[2]: *** [png.o] Error 1
gcc -I/opt/local/include -O2 -I/usr/X11R6/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include -c -o xlib.o xlib.c
gcc -I/opt/local/include -O2 -I/usr/X11R6/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include -c -o ui_x11.o ui_x11.c
rm -f /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/lib/libuix11.a
ar rc /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/lib/libuix11.a xlib.o ui_x11.o
ranlib /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/lib/libuix11.a
gcc -I/opt/local/include -O2 -I/usr/X11R6/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/src/include -L/opt/local/lib -L/opt/local/lib -o /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/bin/xaos lib/libui.a lib/libui-hlp.a lib/libengine.a lib/libutil.a lib/libfilter.a lib/libuix11.a -lpng -lz -lm -lXext -L/usr/X11R6/lib -lX11
i686-apple-darwin8-gcc-4.0.1: lib/libui.a: No such file or directory
i686-apple-darwin8-gcc-4.0.1: lib/libui-hlp.a: No such file or directory
i686-apple-darwin8-gcc-4.0.1: lib/libengine.a: No such file or directory
i686-apple-darwin8-gcc-4.0.1: lib/libutil.a: No such file or directory
i686-apple-darwin8-gcc-4.0.1: lib/libfilter.a: No such file or directory
make[1]: *** [/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_xaos/work/XaoS-3.1.2/bin/xaos] Error 1
make: *** [all] Error 2
Error: Status 1 encountered during processing.
tigger:~> which gcc
/usr/bin/gcc
tigger:~> uname -a
Darwin tigger.local 8.10.1 Darwin Kernel Version 8.10.1: Wed May 23 16:33:00 PDT 2007; root:xnu-792.22.5~1/RELEASE_I386 i386 i386
tigger:~> gcc -v
Using built-in specs.
Target: i686-apple-darwin8
Configured with: /private/var/tmp/gcc/gcc-5367.obj~1/src/configure --disable-checking -enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib --build=powerpc-apple-darwin8 --with-arch=nocona --with-tune=generic --program-prefix= --host=i686-apple-darwin8 --target=i686-apple-darwin8
Thread model: posix
gcc version 4.0.1 (Apple Computer, Inc. build 5367)
Attachments
Change History
comment:1 Changed 6 years ago by nox@…
- Priority changed from Blocker to High
- Milestone set to Port Bugs
- Version 1.5.0 deleted
- Summary changed from MacPorts 1.5: XaoS 3.1.2 doesn't compile on MBP to BUG: XaoS 3.1.2 doesn't compile on MBP
comment:2 Changed 6 years ago by ryandesign@…
- Cc macforge@…, ryandesign@… added
I agree, it doesn't work for me either on my MacBook Pro.
Rather than try to get 3.1.2 working, I tried to update the portfile to the current version, 3.2.3. That didn't work either. I have opened a ticket with the authors of xaos:
http://sourceforge.net/tracker/index.php?func=detail&aid=1780905&group_id=5771&atid=105771
comment:3 Changed 6 years ago by albatros@…
Hi, I fixed the very same problem by (manually) installing aalib first; seems that the xaos port is missing a dependency...
comment:4 Changed 6 years ago by albatros@…
Erm, sorry, installing aalib did _not_ suffice to fix this (and please don't ask me why it seemed to me that way an hour back...).
comment:5 Changed 5 years ago by albatros@…
OK, this time I really did get xaos to compile, and it even seems to work... This required two changes to the source code:
1) Moved the contents of src/include/formulas.h to src/include/fractal.h (in an intelligent way, the #defines to the beginning, the extern declarations to the end, plus change one or to #includes to reference fractal.h instead of formulas.h). This got rid of the errors about a struct declared for an unknown type in formulas.h.
2) Changed a register from bx to cx in an assembler inline in src/engine/i386.c because the assembler complained about "PIC register bx clobbered" (which seems strange because I didn't see any PIC on the command line of the compiler, but I didn't bother to investigate further).

