Opened 7 years ago

Closed 7 years ago

#41912 closed defect (fixed)

bastet @0.41: Undefined symbols "_wyx2pointer"

Reported by: fluffy@… Owned by: sfiera@…
Priority: Normal Milestone:
Component: ports Version: 2.2.1
Keywords: haspatch Cc: ryandesign (Ryan Schmidt)
Port: bastet

Description (last modified by ryandesign (Ryan Schmidt))

Clean build on a fresh install of MacPorts on OSX 10.9 (Retina MacBook Pro):

:notice:build --->  Building bastet
:debug:build Executing org.macports.build (bastet)
:debug:build Environment: CPATH='/opt/local/include' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/work/.CC_PRINT_OPTIONS' LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.9'
:debug:build Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/work/bastet-0.41" && /usr/bin/make -j4 -w all PREFIX=/opt/local'
:debug:build Executing command line:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/work/bastet-0.41" && /usr/bin/make -j4 -w all PREFIX=/opt/local 
:info:build make: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/work/bastet-0.41'
:info:build gcc -L/opt/local/lib -lncurses -o bastet main.o game.o highscore.o bast.o
:info:build Undefined symbols for architecture x86_64:
:info:build   "_wyx2pointer", referenced from:
:info:build       _eval_pos in bast.o
:info:build       _wcheck_block_pos in bast.o
:info:build       _wset_block in bast.o
:info:build ld: symbol(s) not found for architecture x86_64
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)
:info:build make: *** [bastet] Error 1
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/work/bastet-0.41'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/work/bastet-0.41" && /usr/bin/make -j4 -w all PREFIX=/opt/local 
:info:build Exit code: 2
:error:build org.macports.build for port bastet returned: command execution failed
:debug:build Error code: CHILDSTATUS 59015 2
:debug:build Backtrace: command execution failed
    while executing
"system -nice 0 $fullcmdstring"
    ("eval" body line 1)
    invoked from within
"eval system $notty $nice \$fullcmdstring"
    invoked from within
"command_exec build"
    (procedure "portbuild::build_main" line 8)
    invoked from within
"$procedure $targetname"
:info:build Warning: targets not executed for bastet: org.macports.activate org.macports.build org.macports.destroot org.macports.install
:notice:build Please see the log file for port bastet for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_games_bastet/bastet/main.log

Attachments (1)

patch-Makefile.diff (604 bytes) - added by ryandesign (Ryan Schmidt) 7 years ago.
proposed patch

Download all attachments as: .zip

Change History (4)

comment:1 Changed 7 years ago by ryandesign (Ryan Schmidt)

Description: modified (diff)
Owner: changed from macports-tickets@… to sfiera@…
Summary: bastet @0.41 fails to build on 64-bitbastet @0.41: Undefined symbols "_wyx2pointer"

wyx2pointer is inline, so it may just need -std=gnu89 added to CFLAGS. Unfortunately the port doesn't obey ${configure.cflags} or other MacPorts variables, is not UsingTheRightCompiler or -arch flags, doesn't have a universal variant, ...

0.43 is also available, which is a complete rewrite of the code, so that may be a more promising solution to explore.

Changed 7 years ago by ryandesign (Ryan Schmidt)

Attachment: patch-Makefile.diff added

proposed patch

comment:2 in reply to:  1 Changed 7 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added
Keywords: haspatch added

Replying to ryandesign@…:

wyx2pointer is inline, so it may just need -std=gnu89 added to CFLAGS.

Yes, that seems to work. I just added that to the existing Makefile patch.

I'll file new tickets for other issues.

comment:3 Changed 7 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: newclosed

r115269 (maintainer timeout)

Note: See TracTickets for help on using tickets.