Opened 17 years ago

Closed 17 years ago

Last modified 16 years ago

#14144 closed defect (fixed)

libidl uses system libtool: fails to upgrade port

Reported by: paulbeard@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: Cc: aldo@…
Port:

Description (last modified by jmpalacios (Juan Manuel Palacios))

--->  Building libidl 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_devel_libidl/work/libIDL-0.8.10" && make all " returned error 2
Command output: make  all-recursive
Making all in include
Making all in libIDL
make  all-am
make[4]: Nothing to be done for `all-am'.
make[3]: Nothing to be done for `all-am'.
/bin/sh ./libtool --tag=CC   --mode=link /usr/bin/gcc-4.0  -O2 -no-cpp-precomp -version-info 0:0:0 -L/opt/local/lib -lglib-2.0 -lintl -liconv   -no-undefined -L/opt/local/lib -o libIDL-2.la -rpath /opt/local/lib parser.lo lexer.lo ns.lo util.lo  
/usr/bin/gcc-4.0 -dynamiclib  -o .libs/libIDL-2.0.0.0.dylib  .libs/parser.o .libs/lexer.o .libs/ns.o .libs/util.o  -L/opt/local/lib /opt/local/lib/libglib-2.0.dylib /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib  -install_name  /opt/local/lib/libIDL-2.0.dylib -compatibility_version 1 -current_version 1.0
ld: Undefined symbols:
___IDL_cur_token_line
___IDL_lex
___IDL_prev_token_line
___IDL_in
___IDL_lex_cleanup
___IDL_lex_init
/usr/bin/libtool: internal link edit command failed
make[2]: *** [libIDL-2.la] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Change History (10)

comment:1 Changed 17 years ago by paulbeard@…

Hmm, that should be:

--->  Building libidl 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_devel_libidl/work/libIDL-0.8.10" && make all " returned error 2
Command output: make  all-recursive
Making all in include
Making all in libIDL
make  all-am
make[4]: Nothing to be done for `all-am'.
make[3]: Nothing to be done for `all-am'.
/bin/sh ./libtool --tag=CC   --mode=link /usr/bin/gcc-4.0  -O2 -no-cpp-precomp -version-info 0:0:0 -L/opt/local/lib -lglib-2.0 -lintl -liconv   -no-undefined -L/opt/local/lib -o libIDL-2.la -rpath /opt/local/lib parser.lo lexer.lo ns.lo util.lo  
/usr/bin/gcc-4.0 -dynamiclib  -o .libs/libIDL-2.0.0.0.dylib  .libs/parser.o .libs/lexer.o .libs/ns.o .libs/util.o  -L/opt/local/lib /opt/local/lib/libglib-2.0.dylib /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib  -install_name  /opt/local/lib/libIDL-2.0.dylib -compatibility_version 1 -current_version 1.0
ld: Undefined symbols:
___IDL_cur_token_line
___IDL_lex
___IDL_prev_token_line
___IDL_in
___IDL_lex_cleanup
___IDL_lex_init
/usr/bin/libtool: internal link edit command failed
make[2]: *** [libIDL-2.la] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

comment:2 Changed 17 years ago by jmpalacios (Juan Manuel Palacios)

Description: modified (diff)

comment:3 Changed 17 years ago by paulbeard@…

I don't know if this helps, but the Huntsville Mac User Groups has a ports system of their own and they seem to have this port in their archives. I'll enquire as to how they got it compiled.

comment:4 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: aldo@… added

I closed #14058 as a duplicate of this one.

comment:5 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)

paul beard also reported this problem on macports-users.

comment:6 Changed 17 years ago by todmorrison (Tod Morrison)

The problem is that lexer.c is not being properly created from lexer.l by the macports version of flex. I hacked around the problem by manually generating lexer.c using the system version of lex (/usr/bin/lex), but this is not really a solution.

comment:7 Changed 17 years ago by danielluke (Daniel J. Luke)

So, we can force the configure script to use the system installed flex instead of the macports provided one with:

configure.env LEX=/usr/bin/lex

comment:8 Changed 17 years ago by danielluke (Daniel J. Luke)

I mean

configure.env LEX=/usr/bin/flex

And it also looks like the configure script needs a little patch since it will error out if $LEX != 'flex'

comment:9 Changed 17 years ago by danielluke (Daniel J. Luke)

Resolution: fixed
Status: newclosed

Committed in r33828

comment:10 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.