Opened 13 years ago

Closed 12 years ago

#28714 closed defect (fixed)

devel/libconfig-hr-1.4.6 fails to build

Reported by: daniel.hornung@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: Cc:
Port: libconfig-hr

Description

On my OS X 10.5 system, the new (1.4.6) libconfig-hr fails to build, while 1.4.5 has worked, as far as I can remember.

The linker fails with:

 Undefined symbols:
   "_config_set_include_dir", referenced from:
       _ParsingAndFormatting in libconfig_tests-tests.o

This is my log:

version:1
:debug:main Executing org.macports.main (libconfig-hr)
:debug:main Skipping completed org.macports.fetch (libconfig-hr)
:debug:main Skipping completed org.macports.checksum (libconfig-hr)
:debug:main Skipping completed org.macports.extract (libconfig-hr)
:debug:main Skipping completed org.macports.patch (libconfig-hr)
:debug:main Skipping completed org.macports.configure (libconfig-hr)
:msg:main --->  Building libconfig-hr
:debug:build build phase started at Wed Mar  9 09:59:24 CET 2011
:debug:build Executing org.macports.build (libconfig-hr)
: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_ports_devel_libconfig-hr/work/.CC_PRINT_OPTIONS' LIBRARY_PAT
H='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.5'
:debug:build Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_libconfig-hr/work/libconfig-1.4.6" && /usr/bin/make -j2 all'
:info:build /usr/bin/make  all-recursive
:info:build Making all in lib
:info:build /usr/bin/make  all-am
:info:build make[3]: Nothing to be done for `all-am'.
:info:build Making all in doc
:info:build make[2]: Nothing to be done for `all'.
:info:build Making all in tinytest
:info:build make[2]: Nothing to be done for `all'.
:info:build Making all in tests
:info:build /bin/sh ../libtool --tag=CC   --mode=link /usr/bin/gcc-4.0 -std=c99 -O2 -arch i386  -L/opt/local/lib -arch i386 -o libconfig_tests libconfig_tests-tests.o -L../tinytest -ltinytest -L../lib/.libs -lconfig
:info:build libtool: link: /usr/bin/gcc-4.0 -std=c99 -O2 -arch i386 -arch i386 -o libconfig_tests libconfig_tests-tests.o  -L/opt/local/lib -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_re
lease_ports_devel_libconfig-hr/work/libconfig-1.4.6/tinytest -ltinytest -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_libconfig-hr/work/libconfig-1.4.6/lib/.libs /opt/l
ocal/lib/libconfig.dylib
:info:build Undefined symbols:
:info:build   "_config_set_include_dir", referenced from:
:info:build       _ParsingAndFormatting in libconfig_tests-tests.o
:info:build ld: symbol(s) not found
:info:build collect2: ld returned 1 exit status
:info:build make[2]: *** [libconfig_tests] Error 1
:info:build make[1]: *** [all-recursive] Error 1
:info:build make: *** [all] Error 2
:info:build shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_libconfig-hr/work/libconfig-1.4.6" && /usr/bin/make -j2 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 libconfig-hr): org.macports.destroot org.macports.build
:notice:build Log for libconfig-hr is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_libconfig-hr/main.log

Change History (4)

comment:1 Changed 13 years ago by mf2k (Frank Schima)

Port: libconfig-hr added

comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

I've updated libconfig-hr to 1.4.7; does that help?

comment:3 Changed 13 years ago by daniel.hornung@…

1.4.7 does not help, but I think I tracked the error down.

The problem is the -L/opt/local/lib argument during linking of the test target and its position in the command line. Since the old version of libconfig (1.4.5 in my case) was still installed, the linker tried to find "_config_set_include_dir" in the old libs.

A workaround (but no real fix) is to deactivate libconfig-hr, then install it again:

port deactivate libconfig-hr
port upgrade libconfig-hr

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

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.