libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libtool C++ link bug with -lm functions with Sun Workshop compiler


From: Tim Mooney
Subject: Re: libtool C++ link bug with -lm functions with Sun Workshop compiler
Date: Sun, 23 Mar 2008 23:06:17 -0500 (CDT)
User-agent: Alpine 1.10 (SOC 962 2008-03-14)

In regard to: Re: libtool C++ link bug with -lm functions with Sun Workshop...:

To answer Bob's previous question, I generally upgrade any project I'm
building to use libtool 1.5.latest, so right now I'm using 1.5.26.

Maybe you should be trying 2.2 since support for the Solaris compiler
has been redone so that linking is via the C++ compiler for C++ code.

In the case of aspell, which is where I discovered this issue, 1.5.26 was
using the C++ compiler to do the link (for both the library creation and
eventual program creation).  I know that there are other projects that
mixed C and C++ code and weren't correctly being linked by the C++
compiler -- in fact I reported that issue a few weeks ago.  2.2 is a
definite improvement there.

I tried 2.2 for this issue, though, and no improvement over 1.5.26:


Making all in .
gmake[1]: Entering directory `/local/src/RPM/BUILD/aspell-0.60.5'
/bin/bash ./libtool --tag=CXX   --mode=link CC  -xO2 -xtarget=native -m64 
-xarch=native -I/local/gnu/include -I/local/gnu/include -version-info 16:4:1 
-no-undefined -L/local/gnu/lib/64 -L/local/gnu/lib/64 -o libaspell.la -rpath 
/local/gnu/lib/64 common/cache.lo common/string.lo common/getdata.lo 
common/itemize.lo common/file_util.lo common/string_map.lo 
common/string_list.lo common/config.lo common/posib_err.lo common/errors.lo 
common/error.lo common/fstream.lo common/iostream.lo common/info.lo 
common/can_have_error.lo common/convert.lo common/tokenizer.lo 
common/speller.lo common/document_checker.lo common/filter.lo 
common/objstack.lo common/strtonum.lo common/gettext_init.lo 
common/file_data_util.lo modules/speller/default/readonly_ws.lo 
modules/speller/default/suggest.lo modules/speller/default/data.lo 
modules/speller/default/multi_ws.lo modules/speller/default/phonetic.lo 
modules/speller/default/writable.lo modules/speller/default/speller_impl.lo 
modules/speller/default/!
phonet.lo modules/speller/default/typo_editdist.lo modules/speller/default/editdist.lo modules/speller/default/primes.lo modules/speller/default/language.lo modules/speller/default/leditdist.lo modules/speller/default/affix.lo modules/tokenizer/basic.lo lib/filter-c.lo lib/word_list-c.lo lib/info-c.lo lib/mutable_container-c.lo lib/error-c.lo lib/document_checker-c.lo lib/string_map-c.lo lib/new_config.lo lib/config-c.lo lib/string_enumeration-c.lo lib/can_have_error-c.lo lib/dummy.lo lib/new_filter.lo lib/new_fmode.lo lib/string_list-c.lo lib/find_speller.lo lib/speller-c.lo lib/string_pair_enumeration-c.lo lib/new_checker.lo modules/filter/url.lo -L/local/gnu/lib/64 -lintl -L/local/lib/64 -lc -R/local/gnu/lib/64 -ldl libtool: link: CC -G -zdefs -hlibaspell.so.15 -o .libs/libaspell.so.15.1.4 common/.libs/cache.o common/.libs/string.o common/.libs/getdata.o common/.libs/itemize.o common/.libs/file_util.o common/.libs/string_map.o common/.libs/string_list.o common/.libs/config.o common/.libs/posib_err.o common/.libs/errors.o common/.libs/error.o common/.libs/fstream.o common/.libs/iostream.o common/.libs/info.o common/.libs/can_have_error.o common/.libs/convert.o common/.libs/tokenizer.o common/.libs/speller.o common/.libs/document_checker.o common/.libs/filter.o common/.libs/objstack.o common/.libs/strtonum.o common/.libs/gettext_init.o common/.libs/file_data_util.o modules/speller/default/.libs/readonly_ws.o modules/speller/default/.libs/suggest.o modules/speller/default/.libs/data.o modules/speller/default/.libs/multi_ws.o modules/speller/default/.libs/phonetic.o modules/speller/default/.libs/writable.o modules/speller/default/.libs/speller_impl.o modules/speller/default/.libs/phonet.o! modules/speller/default/.libs/typo_editdist.o modules/speller/default/.libs/editdist.o modules/speller/default/.libs/primes.o modules/speller/default/.libs/language.o modules/speller/default/.libs/leditdist.o modules/speller/default/.libs/affix.o modules/tokenizer/.libs/basic.o lib/.libs/filter-c.o lib/.libs/word_list-c.o lib/.libs/info-c.o lib/.libs/mutable_container-c.o lib/.libs/error-c.o lib/.libs/document_checker-c.o lib/.libs/string_map-c.o lib/.libs/new_config.o lib/.libs/config-c.o lib/.libs/string_enumeration-c.o lib/.libs/can_have_error-c.o lib/.libs/dummy.o lib/.libs/new_filter.o lib/.libs/new_fmode.o lib/.libs/string_list-c.o lib/.libs/find_speller.o lib/.libs/speller-c.o lib/.libs/string_pair_enumeration-c.o lib/.libs/new_checker.o modules/filter/.libs/url.o -R/local/gnu/lib/64 -R/local/gnu/lib/64 -L/local/gnu/lib/64 /local/gnu/lib/64/libintl.so -L/local/lib/64 -lc -ldl -library=Cstd -library=Crun -lc -xtarget=native -m64 -xarch=native Undefined first referenced
 symbol                             in file
log                                 common/.libs/convert.o
sqrt                                modules/speller/default/.libs/readonly_ws.o
floor                               common/.libs/convert.o
ld: fatal: Symbol referencing errors. No output written to 
.libs/libaspell.so.15.1.4
gmake[1]: *** [libaspell.la] Error 1
gmake[1]: Leaving directory `/local/src/RPM/BUILD/aspell-0.60.5'
gmake: *** [all-recursive] Error 1


By visual inspection, it doesn't look like the relevant code in libtool.m4
that automatically adds `-library=Cstd -library=Crun' has changed in any
significant manner since 1.5.2X.

Tim
--
Tim Mooney                              address@hidden
Information Technology Services         (701) 231-1076 (Voice)
Room 242-J6, IACC Building              (701) 231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164

reply via email to

[Prev in Thread] Current Thread [Next in Thread]