Hello,

Olli Grewe reported on 13.6.2002 (on the lyx-users-list) about problems compiling lyx 
1.2.0.
I've got the same problem on HPUX 10.20 using gcc 2.95.2.
I checked Bugzilla but found nothing.

Compilation went smoothly, but the link-step failed with the same bunch of missing 
symbols. (But the output of the list of symbols differs somewhat in the order)

My output from the link step is included below.

I tried to track this one down. So I tried to find "ControlInset<InsetCommand, 
InsetCommandParams>::inset(void) const(code)".

I used the following command for this:
/usr/bin/nm $i | /pd/gcc/bin/c++filt | grep -F ....
(Meaning I used the HP nm (I didn't find a gnu one with gcc) and the
unmangling-filter from gcc. [Sorry, I normally use the HP tools])

I came up with:

========= ./src/frontends/controllers: =========
------ ./src/frontends/controllers/ControlBibitem.o ------
ControlInset<InsetCommand, InsetCommandParams>::inset(void) const|          |undef 
|code   |

------ ./src/frontends/controllers/ControlBibtex.o ------
ControlInset<InsetCommand, InsetCommandParams>::inset(void) const|          |undef 
|code   |

------ ./src/frontends/controllers/ControlCommand.o ------
ControlInset<InsetCommand, InsetCommandParams>::inset(void) const|         
0|static|entry  |$CODE$

========= ./src/frontends/.libs: =========

------ ./src/frontends/.libs/libfrontends.a ------
ControlInset<InsetCommand, InsetCommandParams>::inset(void) const|          |undef 
|code   |
ControlInset<InsetCommand, InsetCommandParams>::inset(void) const|          |undef 
|code   |
ControlInset<InsetCommand, InsetCommandParams>::inset(void) const|         
0|static|entry  |$CODE$


Ok, so this symbol is used in ControlBibitem.o and ControlBibtex.o. 
It is defined in ControlCommand.o. This all is included in libfrontends.a And surely 
enough, lyx get linked against this lib.
I tried to change the '/..../libxy.a' to '-L.... -lxy' for all libraries linked.
[In hope this will change the resolution mechanism of the linker]
I moved the offending -lfrontends to the end of the link line and finally added a 
second -lfrontend.

This all didn't change anything. So now I'm at the end of my wits...
Note that g++ uses HP ld as linker , as can be seen from the error message:
"/usr/ccs/bin/ld: Unsatisfied symbols:"

Please contact me, if you need further details.

TIA 

Martin

P.S.:
link line and output: (From the original makefile)

/bin/sh ../libtool --mode=link g++  -march=1.1  -L/pd/glibs/lib/ -o lyx  BufferView.o 
BufferView2.o BufferView_pimpl.o Bullet.o Chktex.o ColorHandler.o CutAndPaste.o 
DepTable.o FloatList.o Floating.o FontInfo.o FontLoader.o FuncStatus.o LColor.o 
LaTeX.o LaTeXFeatures.o LyXAction.o LyXView.o MenuBackend.o Painter.o PainterBase.o 
ParagraphParameters.o Spacing.o TextCache.o Thesaurus.o ToolbarDefaults.o WorkArea.o 
XFormsView.o box.o buffer.o bufferlist.o bufferparams.o bufferview_funcs.o chset.o 
converter.o debug.o encoding.o exporter.o font.o gettext.o importer.o intl.o 
iterators.o kbmap.o kbsequence.o language.o lastfiles.o lengthcommon.o lyx_cb.o 
lyx_gui.o lyx_main.o lyx_sty.o lyxcursor.o lyxfont.o lyxfind.o lyxfunc.o 
lyxgluelength.o lyxlayout.o lyxlength.o lyxlex.o lyxlex_pimpl.o lyxlookup.o lyxrc.o 
lyxrow.o lyxserver.o lyxtextclass.o lyxtextclasslist.o lyxvc.o main.o minibuffer.o 
paragraph.o paragraph_pimpl.o screen.o sp_spell.o tabular.o tabular-old.o 
tabular_funcs.o tex-ac!
!
cent.o tex-strings.o texrow.o text.o text2.o tracer.o trans.o trans_mgr.o undo.o 
undo_funcs.o undostack.o vc-backend.o version.o vspace.o mathed/libmathed.la 
insets/libinsets.la frontends/libfrontends.la graphics/libgraphics.la 
support/libsupport.la `../sigc++/sigc-config --libs-names | sed -e 's/-lsigc//'` 
../sigc++/libsigc.la ../intl/libintl.a   -lSM -lICE -liberty -lc -lm   
-L/usr/lib/X11R6 -lX11
g++ -march=1.1 -o lyx BufferView.o BufferView2.o BufferView_pimpl.o Bullet.o Chktex.o 
ColorHandler.o CutAndPaste.o DepTable.o FloatList.o Floating.o FontInfo.o FontLoader.o 
FuncStatus.o LColor.o LaTeX.o LaTeXFeatures.o LyXAction.o LyXView.o MenuBackend.o 
Painter.o PainterBase.o ParagraphParameters.o Spacing.o TextCache.o Thesaurus.o 
ToolbarDefaults.o WorkArea.o XFormsView.o box.o buffer.o bufferlist.o bufferparams.o 
bufferview_funcs.o chset.o converter.o debug.o encoding.o exporter.o font.o gettext.o 
importer.o intl.o iterators.o kbmap.o kbsequence.o language.o lastfiles.o 
lengthcommon.o lyx_cb.o lyx_gui.o lyx_main.o lyx_sty.o lyxcursor.o lyxfont.o lyxfind.o 
lyxfunc.o lyxgluelength.o lyxlayout.o lyxlength.o lyxlex.o lyxlex_pimpl.o lyxlookup.o 
lyxrc.o lyxrow.o lyxserver.o lyxtextclass.o lyxtextclasslist.o lyxvc.o main.o 
minibuffer.o paragraph.o paragraph_pimpl.o screen.o sp_spell.o tabular.o tabular-old.o 
tabular_funcs.o tex-accent.o tex-strings.o texrow.o text.o text2.o tracer!
!
.o trans.o trans_mgr.o undo.o undo_funcs.o undostack.o vc-backend.o version.o vspace.o 
 -L/pd/glibs/lib/ mathed/.libs/libmathed.a insets/.libs/libinsets.a 
frontends/.libs/libfrontends.a -lforms -lXpm graphics/.libs/libgraphics.a 
support/.libs/libsupport.a ../sigc++/.libs/libsigc.a ../intl/libintl.a -lSM -lICE 
-liberty -lc -lm -L/usr/lib/X11R6 -lX11
/usr/ccs/bin/ld: Unsatisfied symbols:
   ControlInset<InsetCommand, InsetCommandParams>::inset(void) const(code)
   ControlInset<InsetGraphics, InsetGraphicsParams>::apply(void) (code)
   ControlInset<InsetError, basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > >::updateSlot(bool)(code)
   ControlInset<InsetFloat, FloatParams>::params(void) (code)
   ControlInset<InsetERT, ERTParams>::params(void)(code)
   ControlInset<InsetFloat, FloatParams>::hide(void) (code)
   ControlInset<InsetCommand, InsetCommandParams>::update(void) (code)
   ButtonController<OkCancelReadOnlyPolicy, 
xformsBC>::ButtonController(basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > const &, basic_string<char, 
string_char_traits<char>, __default_alloc_template<false, 0> > const &)(code)
   ControlInset<InsetMinipage, MinipageParams>::params(void) (code)
   ControlInset<InsetExternal, InsetExternal::Params>::updateSlot(bool)   (code)
   ControlInset<InsetExternal, InsetExternal::Params>::hide(void)  (code)
   ControlInset<InsetFloat, FloatParams>::updateSlot(bool)  (code)
   ControlDialog<ControlConnectBD>::update(void)(code)
   ControlInset<InsetMinipage, MinipageParams>::hide(void) (code)
   ControlDialog<ControlConnectBI>::update(void)(code)
   ControlInset<InsetCommand, InsetCommandParams>::params(void) (code)
   ControlInset<InsetMinipage, MinipageParams>::updateSlot(bool)  (code)
   ControlInset<InsetFloat, FloatParams>::apply(void) (code)
   ControlDialog<ControlConnectBD>::hide(void)(code)
   ControlInset<InsetCommand, InsetCommandParams>::showInset(InsetCommand *)      
(code)
   ControlInset<InsetInclude, InsetInclude::Params>::hide(void)  (code)
   ControlDialog<ControlConnectBI>::show(void)(code)
   ControlDialog<ControlConnectBI>::hide(void)(code)
   ControlDialog<ControlConnectBD>::show(void)(code)
   ControlInset<InsetCommand, InsetCommandParams>::hide(void) (code)
   ControlInset<InsetError, basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > >::apply(void)(code)
   ControlInset<InsetInclude, InsetInclude::Params>::params(void)  (code)
   ControlInset<InsetExternal, InsetExternal::Params>::params(void)  (code)
   ControlInset<InsetERT, ERTParams>::apply(void)(code)
   ControlInset<InsetExternal, InsetExternal::Params>::apply(void)  (code)
   ControlInset<InsetCommand, InsetCommandParams>::createInset(basic_string<char, 
string_char_traits<char>, __default_alloc_template<false, 0> > const &)(code)
   ControlInset<InsetInclude, InsetInclude::Params>::updateSlot(bool)   (code)
   ControlInset<InsetERT, ERTParams>::hide(void)(code)
   ControlInset<InsetInclude, InsetInclude::Params>::update(void)  (code)
   ControlInset<InsetERT, ERTParams>::update(void)(code)
   ControlInset<InsetGraphics, InsetGraphicsParams>::hide(void) (code)
   ControlInset<InsetError, basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > >::update(void)(code)
   ControlInset<InsetError, basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > >::params(void)(code)
   ControlInset<InsetCommand, InsetCommandParams>::apply(void) (code)
   boost::detail::crc_table_t<32, 79764919, true>::table_ (data)
   ControlInset<InsetExternal, InsetExternal::Params>::update(void)  (code)
   ControlInset<InsetGraphics, InsetGraphicsParams>::update(void) (code)
   ControlInset<InsetInclude, InsetInclude::Params>::apply(void)  (code)
   ControlInset<InsetERT, ERTParams>::updateSlot(bool)(code)
   ButtonController<NoRepeatedApplyReadOnlyPolicy, 
xformsBC>::ButtonController(basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > const &, basic_string<char, 
string_char_traits<char>, __default_alloc_template<false, 0> > const &)(code)
   ControlInset<InsetMinipage, MinipageParams>::apply(void) (code)
   ControlInset<InsetGraphics, InsetGraphicsParams>::params(void) (code)
   ControlInset<InsetCommand, InsetCommandParams>::updateSlot(bool)  (code)
   ControlInset<InsetMinipage, MinipageParams>::update(void) (code)
   ControlInset<InsetError, basic_string<char, string_char_traits<char>, 
__default_alloc_template<false, 0> > >::hide(void)(code)
   ControlInset<InsetGraphics, InsetGraphicsParams>::updateSlot(bool)  (code)
   ControlInset<InsetFloat, FloatParams>::update(void) (code)
collect2: ld returned 1 exit status
gmake[3]: *** [lyx] Error 1

Reply via email to