Opened 20 years ago

Closed 20 years ago

#1702 closed defect (fixed)

Linking error in boost

Reported by: ed@… Owned by: lasgouttes
Priority: high Milestone:
Component: build Version: 1.3.5
Severity: normal Keywords:
Cc:

Description

(Had to use 1.4.0cvs as version as 1.3.5 is not in version list yet.)

g++ -O3 -pipe -march=athlon-xp -mmmx -msse -m3dnow -mfpmath=387
-momit-leaf-frame-pointer -ftracer -fomit-frame-pointer -ffast-math
-falign-functions=64 -falign-loops=4 -falign-jumps=4 -funroll-loops
-fprefetch-loop-arrays -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/.libs/libmathed.a
insets/.libs/libinsets.a frontends/.libs/libfrontends.a /usr/lib/libflimage.so
/usr/lib/libjpeg.so /usr/lib/libforms.so -lXpm graphics/.libs/libgraphics.a
support/.libs/libsupport.a ../boost/libs/regex/src/.libs/libboostregex.a
../boost/libs/signals/src/.libs/libboostsignals.a /usr/lib/libAiksaurus.so
/usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so -L/usr/i686-pc-linux-gnu/bin
-L/usr/i686-pc-linux-gnu/lib -lbz2 -lSM -lICE -lc -lm -L/usr/X11R6/lib -lX11
-Wl,--rpath -Wl,/usr/lib/gcc/i686-pc-linux-gnu/3.4.2 -Wl,--rpath
-Wl,/usr/lib/gcc/i686-pc-linux-gnu/3.4.2
/usr/lib/gcc/i686-pc-linux-gnu/3.4.2/../../../../i686-pc-linux-gnu/bin/ld:
warning: libstdc++.so.5, needed by /usr/lib/libAiksaurus.so, may conflict with
libstdc++.so.6
/usr/lib/gcc/i686-pc-linux-gnu/3.4.2/../../../../i686-pc-linux-gnu/bin/ld:
warning: libstdc++.so.5, needed by /usr/lib/libAiksaurus.so, may conflict with
libstdc++.so.6
CutAndPaste.o(.text+0xb47): In function `tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
buffer.o(.text+0xd387): In function `
tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
bufferlist.o(.text+0x3447): In function `tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
importer.o(.text+0x7): In function `
tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
text2.o(.text+0x4447): In function `tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
mathed/.libs/libmathed.a(formulamacro.o)(.text+0x3107): In function `
tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
insets/.libs/libinsets.a(insetcaption.o)(.text+0x1447): In function `tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
insets/.libs/libinsets.a(insetfloatlist.o)(.text+0x1407): In function
__tcf_0':: undefined reference to void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
insets/.libs/libinsets.a(insetgraphics.o)(.text+0x4387): In function `
tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
insets/.libs/libinsets.a(insetparent.o)(.text+0x1287): In function `tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
frontends/.libs/libfrontends.a(FormBase.o)(.text+0x2cc7): In function
__tcf_0':: undefined reference to void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
frontends/.libs/libfrontends.a(FormGraphics.o)(.text+0x1a47): In function `
tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
frontends/.libs/libfrontends.a(biblio.o)(.text+0x4bc7): In function `tcf_0':
: undefined reference to `void boost::io::detail::(anonymous
namespace)::empty_buf<std::char_traits<char>,
char>(std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >&)::emptyStr'
collect2: ld returned 1 exit status
make[2]: * [lyx] Error 1
make[2]: Leaving directory `/var/tmp/portage/lyx-1.3.5/work/lyx-1.3.5/src'
make[1]:
* [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/lyx-1.3.5/work/lyx-1.3.5/src'
make: * [all] Error 2

The URL provided is a downstream bug.

Applying a change in the boost.sourceforge.net CVS tree allows the build to proceed:

Revision 1.11 - (view) (download) (annotate) - [select for diffs]
Wed Aug 27 03:24:41 2003 UTC (13 months, 2 weeks ago) by samuel_k
Branch: MAIN
Changes since 1.10: +1 -2 lines
Diff to previous 1.10

got rid of useless empty string auxiliary objects,

among which a static one was causing problems on some platform.

The diff is at
http://cvs.sourceforge.net/viewcvs.py/boost/boost/boost/format/feed_args.hpp?r1=1.10&r2=1.11&diff_format=u
but needs massaging to apply to the code in lyx; the patch I have submitted
downstream is at http://bugs.gentoo.org/attachment.cgi?id=41571

Attachments (1)

lyx-1.3.5-67131@gentoo.org.patch (655 bytes ) - added by ed@… 20 years ago.
Patch

Download all attachments as: .zip

Change History (6)

by ed@…, 20 years ago

Patch

comment:1 by garganti@…, 20 years ago

Patch working for lyx1.3.5, gcc (GCC) 3.4.2 (Gentoo Linux 3.4.2-r2,
ssp-3.4.1-1, pie-8.7.6.5), thanks Ed

comment:2 by Lars Gullik Bjønnes, 20 years ago

Version: 1.4.0cvs1.3.5

comment:3 by lasgouttes, 20 years ago

Status: newassigned

It has been confirmed that this patch also helps solaris8+gcc3.4.

comment:4 by lasgouttes, 20 years ago

Subject: lyx-devel /: Tag: BRANCH_1_3_X status.13x boost ...

CVSROOT: /usr/local/lyx/cvsroot
Module name: lyx-devel
Repository: lyx-devel/boost/boost/format/
Changes by: lasgouttes@… 04/11/03 12:54:18

Modified files:

lyx-devel/: Tag: BRANCH_1_3_X status.13x
lyx-devel/boost/: Tag: BRANCH_1_3_X ChangeLog
lyx-devel/boost/boost/format/: Tag: BRANCH_1_3_X feed_args.hpp

Log message:

fix link error (#1702)

Bugs:
#1702

Patches:
http://www.lyx.org/cgi-bin/viewcvs.cgi/lyx-devel/status.13x?r1=1.1.2.212&r2=1.1.2.213
http://www.lyx.org/cgi-bin/viewcvs.cgi/lyx-devel/boost/ChangeLog?r1=1.32.2.9&r2=1.32.2.10
http://www.lyx.org/cgi-bin/viewcvs.cgi/lyx-devel/boost/boost/format/feed_args.hpp?r1=1.1&r2=1.1.2.1

Complete Diff:
/usr/bin/cvs -f diff -kk -u -r 1.1.2.212 -r 1.1.2.213 /status.13x
/usr/bin/cvs -f diff -kk -u -r 1.32.2.9 -r 1.32.2.10 boost/ChangeLog
/usr/bin/cvs -f diff -kk -u -r 1.1 -r 1.1.2.1 boost/boost/format/feed_args.hpp

comment:5 by lasgouttes, 20 years ago

Resolution: fixed
Status: assignedclosed

Should be fixed now. Thanks a lot ed for reporting both the bug and the fix :)

For information, this error also happens with solaris 8 + gcc 3.4, as indicated
in the following thread:
http://marc.theaimsgroup.com/?l=lyx-devel&m=109863271300276&w=2

Note: See TracTickets for help on using tickets.