Whereas I am able to compile and link lyx 1.3.5 on Solaris 8 using
gcc 3.3.4, the final link step fails doing a build with gcc 3.4.2. Since
I'm able to build qt using gcc 3.4.2 it's not a compiler issue.

The configure run is as follows (gcc-comp starts gcc 3.4.2):
export CC=gcc-comp
export CXX=g++-comp
export CXXFLAGS="-O3 -pipe -mcpu=ultrasparc -mtune=ultrasparc -mvis"
export CFLAGS="-O3 -pipe -mcpu=ultrasparc -mtune=ultrasparc -mvis"
export LDFLAGS=-s
./configure --prefix=/export --datadir=/export/lib \
  --with-version-suffix=1.3.5 --with-extra-prefix=/export
  --with-frontend=qt --enable-shared=no --with-qt-dir=$QTDIR

Everthing compiles fine, then the final link of the executable
yields:

gmake[3]: Entering directory `/tmp/xxx/lyx-1.3.5/src'
/bin/bash ../libtool --mode=link g++-comp  -O3 -pipe -mcpu=ultrasparc
-mtune=ultrasparc -mvis  -s -L/export/lib -Wl,-R/export/lib -o lyx 
BufferView.o BufferView_pimpl.o Bullet.o Chktex.o CutAndPaste.o DepTable.o
FloatList.o Floating.o FuncStatus.o InsetList.o LColor.o LaTeX.o
LaTeXFeatures.o LyXAction.o MenuBackend.o paragraph_funcs.o
ParagraphList.o ParagraphParameters.o Spacing.o TextCache.o Thesaurus.o
ToolbarDefaults.o boost.o boost-inst.o box.o buffer.o bufferlist.o
bufferparams.o bufferview_funcs.o chset.o converter.o counters.o debug.o
encoding.o exporter.o gettext.o factory.o funcrequest.o importer.o intl.o
iterators.o kbmap.o kbsequence.o language.o lastfiles.o lengthcommon.o
lyx_cb.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 lyxrc.o
lyxrow.o lyxserver.o lyxtextclass.o lyxtextclasslist.o lyxvc.o main.o
paragraph.o paragraph_pimpl.o ispell.o pspell.o sgml.o tabular.o
tabular-old.o tabular_funcs.o tex-accent.o tex-strings.o texrow.o text.o
text2.o text3.o toc.o trans.o trans_mgr.o undo.o undo_funcs.o vc-backend.o
version.o vspace.o mathed/libmathed.la insets/libinsets.la
frontends/libfrontends.la graphics/libgraphics.la support/libsupport.la
../boost/libs/regex/src/libboostregex.la
../boost/libs/signals/src/libboostsignals.la -lintl -liconv    -lSM -lICE
-lc -lm   -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lsocket  -lnsl
g++-comp -O3 -pipe -mcpu=ultrasparc -mtune=ultrasparc -mvis -s
-Wl,-R/export/lib -o lyx BufferView.o BufferView_pimpl.o Bullet.o Chktex.o
CutAndPaste.o DepTable.o FloatList.o Floating.o FuncStatus.o InsetList.o
LColor.o LaTeX.o LaTeXFeatures.o LyXAction.o MenuBackend.o
paragraph_funcs.o ParagraphList.o ParagraphParameters.o Spacing.o
TextCache.o Thesaurus.o ToolbarDefaults.o boost.o boost-inst.o box.o
buffer.o bufferlist.o bufferparams.o bufferview_funcs.o chset.o
converter.o counters.o debug.o encoding.o exporter.o gettext.o factory.o
funcrequest.o importer.o intl.o iterators.o kbmap.o kbsequence.o
language.o lastfiles.o lengthcommon.o lyx_cb.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 lyxrc.o lyxrow.o lyxserver.o
lyxtextclass.o lyxtextclasslist.o lyxvc.o main.o paragraph.o
paragraph_pimpl.o ispell.o pspell.o sgml.o tabular.o tabular-old.o
tabular_funcs.o tex-accent.o tex-strings.o texrow.o text.o text2.o text3.o
toc.o trans.o trans_mgr.o undo.o undo_funcs.o vc-backend.o version.o
vspace.o  -L/export/lib mathed/.libs/libmathed.a insets/.libs/libinsets.a
frontends/.libs/libfrontends.a -L/export/qtgccl6//lib
/export/qtgccl6/lib/libqt-mt.so -L/usr/openwin/lib -ljpeg -lpng -lz -lXext
-lresolv -ldl -lpthread -lrt graphics/.libs/libgraphics.a
support/.libs/libsupport.a ../boost/libs/regex/src/.libs/libboostregex.a
../boost/libs/signals/src/.libs/libboostsignals.a /export/lib/libintl.so
/export/lib/libiconv.so -lSM -lICE -lc -lm -lX11 -lsocket -lnsl
-R/export/qtgccl6/lib -R/export/lib -R/export/qtgccl6/lib -R/export/lib
-R/usr/openwin/lib
Undefined                       first referenced
 symbol                             in file
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrimporter.o void
boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char>
>&)::emptyStrinsets/.libs/libinsets.a(insetgraphics.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrmathed/.libs/libmathed.a(formulamacro.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrinsets/.libs/libinsets.a(insetcaption.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrbufferlist.o void
boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char>
>&)::emptyStrfrontends/.libs/libfrontends.a(Alert_pimpl.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrfrontends/.libs/libfrontends.a(biblio.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrbuffer.o void
boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrinsets/.libs/libinsets.a(insetparent.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char>
>&)::emptyStrinsets/.libs/libinsets.a(insetfloatlist.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrfrontends/.libs/libfrontends.a(QVCLog.o)
void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrtext2.o void
boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStrCutAndPaste.o
ld: fatal: Symbol referencing errors. No output written to lyx collect2:
ld returned 1 exit status gmake[3]: *** [lyx] Error 1
gmake[3]: Leaving directory `/tmp/xxx/lyx-1.3.5/src'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/tmp/xxx/lyx-1.3.5/src'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/tmp/xxx/lyx-1.3.5/src'
gmake: *** [all-recursive] Error 1

One more thing: The docs state that ar will segfault on Solaris 8. This is
no more the case on a patched system.

Uwe

Reply via email to