Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#22831 closed defect (fixed)

gnubg @0.14.3, Revision 3 - Configure Error - Build Error on Snow Leopard

Reported by: aroetter@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.8.1
Keywords: Cc: jmroot (Joshua Root)
Port: gnubg

Description (last modified by mf2k (Frank Schima))

System information:

Mac OS X 10.6.2, Xcode 3.2.1, port 1.8.1.

eek:~ $uname -a
Darwin eek 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386
eek:~ $gcc --version:
i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5646) (dot 1)

After a complete clean of all my ports (following migration instructions), followed by commands to completely uninstall mac ports:

sudo rm -rf /opt/local \
/Applications/MacPorts \
/Applications/DarwinPorts \
/Library/Tcl/macports1.0 \
/Library/Tcl/darwinports1.0 \
/Library/LaunchDaemons/org.macports.* \
/Library/StartupItems/DarwinPortsStartup \
/Library/Receipts/MacPorts*.pkg \
/Library/Receipts/DarwinPorts*.pkg \
~/.macports

I reinstalled ports 1.8.1 using the Snow Leopard DMG downloaded from macports.org

The actual build error is

eek:~ $sudo port install gnubg
Password:
--->  Computing dependencies for gnubg
--->  Building gnubg
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_games_gnubg/work/gnubg-0.14.3" && /usr/bin/make -j2 all " returned error 2
Command output: Making all in po
make[2]: Nothing to be done for `all'.
Making all in m4
make[2]: Nothing to be done for `all'.
Making all in xpm
make[2]: Nothing to be done for `all'.
Making all in sounds
if [ fanfare.sco = haere-ra.sco -o fanfare.sco = fanfare.sco ]; then orc=music.orc; \
	else orc=gnubg.orc; fi; true $orc fanfare.sco -W -o fanfare.wav.tmp && \
	true -W -r 22050 -o fanfare.wav fanfare.wav.tmp; rm -f fanfare.wav.tmp
if [ gameover.sco = haere-ra.sco -o gameover.sco = fanfare.sco ]; then orc=music.orc; \
	else orc=gnubg.orc; fi; true $orc gameover.sco -W -o gameover.wav.tmp && \
	true -W -r 22050 -o gameover.wav gameover.wav.tmp; rm -f gameover.wav.tmp
Making all in scripts
make[2]: Nothing to be done for `all'.
source='rollout.c' object='rollout.o' libtool=no \
	depfile='.deps/rollout.Po' tmpdepfile='.deps/rollout.TPo' \
	depmode=gcc3 /bin/sh ./depcomp \
	/usr/bin/gcc-4.2 -DHAVE_CONFIG_H -I. -I. -I. -I./lib  -I/opt/local/include/libxml2 -I./intl -DLOCALEDIR=\"/opt/local/share/locale\" -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include   -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pango-1.0 -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng12      -I/opt/local/include  -O2 -lmx -arch x86_64 -c `test -f 'rollout.c' || echo './'`rollout.c
source='analysis.c' object='analysis.o' libtool=no \
	depfile='.deps/analysis.Po' tmpdepfile='.deps/analysis.TPo' \
	depmode=gcc3 /bin/sh ./depcomp \
	/usr/bin/gcc-4.2 -DHAVE_CONFIG_H -I. -I. -I. -I./lib  -I/opt/local/include/libxml2 -I./intl -DLOCALEDIR=\"/opt/local/share/locale\" -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include   -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pango-1.0 -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng12      -I/opt/local/include  -O2 -lmx -arch x86_64 -c `test -f 'analysis.c' || echo './'`analysis.c
rollout.c:222: error: static declaration of 'nSkip' follows non-static declaration
rollout.h:62: error: previous declaration of 'nSkip' was here
make[2]: *** [rollout.o] Error 1
make[2]: *** Waiting for unfinished jobs....
i686-apple-darwin10-gcc-4.2.1: -lmx: linker input file unused because linking not done
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Error: Status 1 encountered during processing.

Seems similar to same "nSkip" compilation errors previously reported and resolved for Mac OS Leopard (10.5) (See Bug #13434)

Change History (6)

comment:1 Changed 14 years ago by aroetter@…

Cc: aroetter@… added

Cc Me!

comment:2 Changed 14 years ago by mf2k (Frank Schima)

Cc: aroetter@… removed
Description: modified (diff)
Port: gnubg added

comment:3 Changed 14 years ago by aroetter@…

Cc: aroetter@… added

Cc Me!

comment:4 Changed 14 years ago by jmroot (Joshua Root)

Cc: jmr@… added; aroetter@… removed
Resolution: fixed
Status: newclosed

Should be fixed by r61346.

comment:5 in reply to:  4 Changed 14 years ago by aroetter@…

Replying to jmr@…:

Should be fixed by r61346.

Stupid question, when I do a

sudo port clean --all gnubg

, it doesn't delete: /opt/local/var/macports/sources/rsync.macports.org/release/ports/games/gnubg

which contains the old (buggy) Portfile. I could edit it manually to apply your diff, but that is silly. I have tried deleting the whole directory manually, but then install complains with:

eek:gnubg $sudo port install gnubg
Error: Unable to open port: couldn't change working directory to "/opt/local/var/macports/sources/rsync.macports.org/release/ports/games/gnubg": no such file or directory
eek:gnubg $

2 Questions:

  1. How do I remove the old Portfile from my system
  2. If I do that, will port install fetch a new one with your patch applied, or do I need to wait for a release / or get the head out of version control somewhere?

Thanks, Alex

comment:6 Changed 14 years ago by aroetter@…

Disregard previous, looks like all available Portfiles are refreshed by "selfupdate", which, followed by a clean & install, seems to do the trick. Thanks.

Note: See TracTickets for help on using tickets.