Issue 74401 - FreeBSD porting : OOF680_m7 build fails at basctl
Summary: FreeBSD porting : OOF680_m7 build fails at basctl
Alias: None
Product: porting
Classification: Code
Component: code (show other issues)
Version: OOo 2.1
Hardware: All FreeBSD
: P2 Trivial (vote)
Target Milestone: OOo 2.2
Assignee: maho.nakata
QA Contact: issues@porting
: 74419 (view as issue list)
Depends on:
Reported: 2007-02-10 12:14 UTC by maho.nakata
Modified: 2007-02-19 03:41 UTC (History)
5 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Note You need to log in before you can comment on or make changes to this issue.
Description maho.nakata 2007-02-10 12:14:14 UTC
FreeBSD 6.2-RELEASE/amd64+OOF680_m7 build fails at basctl.
ccache g++41 -Wl,-z,combreloc -Wl,-rpath,'$ORIGIN' -shared -Wl,-O1
-Wl,--version-script ../
c/ -L../ -L../lib
lib -L/work/ports/editors/
.0/lib -L/usr/local/diablo-jdk1.5.0/jre/lib/amd64
-L/usr/local/diablo-jdk1.5.0/jre/lib/amd64/server -L/usr/
local/diablo-jdk1.5.0/jre/lib/amd64/native_threads -L/usr/X11R6/lib
.o ../ -o
../ ../
sdoc.o ../ ../
../ ../unxf ../
../ ../
side2b.o ../ ../
../ ../unxfbs ../
../ ../
ype3.o ../ ../
../ ../unxfbsd ../
../ ../
lg.o ../ ../
../ ../unxfbsdx
.pro/slo/basidectrlr.o ../
../ ../
o/dlgedfunc.o ../ ../
 ../ ../
../ ../unxfbsdx
.pro/slo/dlgedclip.o ../
../ ../
essibledialogwindow.o ../
-lsvx680fx -lsfx680fx -lsb680fx -l
svt680fx -ltk680fx -lvcl680fx -lsvl680fx -lsot680fx -lutl680fx -ltl680fx
-lxcr680fx -lcomphelp4gcc3 -luno_c
ppuhelpergcc3 -lucbhelper3gcc3 -luno_cppu -luno_sal -pthread -lm -Wl,-Bdynamic
rm -f ../
mv ../ ../
-L../ -L../li
b -L/work/ports/editors/
680_m7/solenv/unxfbsdx/lib -L/usr/local/diablo-jdk1.5.0/lib
-L/usr/local/diablo-jdk1.5.0/jre/lib/amd64 -L/u
-L/usr/local/diablo-jdk1.5.0/jre/lib/amd64/native_threads -L/
usr/X11R6/lib ../
Checking DLL ../ ...: ERROR:
../ Undefined symbol "_ZN5boost15throw_exceptionERKSt9exception"
dmake:  Error code 1, while making '../'
'---* *---'
Comment 1 maho.nakata 2007-02-10 12:24:54 UTC
% nm basctl/ | grep
                 U _ZN5boost15throw_exceptionERKSt9exception

cws basexc introduced the change, and this cws is suspicious.
Comment 2 maho.nakata 2007-02-10 12:58:52 UTC
This symbol doesn't exist for SRC680_m203...
% grep -R _ZN5boost15throw_exceptionERKSt9exception work/*
Comment 3 pavel 2007-02-10 18:15:29 UTC
maho: you can get better answer if you ask basexc authors directly.
You can get basexc them via EIS.
Comment 4 maho.nakata 2007-02-11 21:30:15 UTC
pjanik: thanks for your advise.

FreeBSD 6.2/i386+OOF680_m7 was build without problems.
and no symbols like_ZN5boost15throw_exceptionERKSt9exception
% nm basctl/ | grep
fs: could you please comment on this issue. For FreeBSD/amd64, we use
external boost (boost-1.33.1_2)
Comment 5 ht990332 2007-02-11 22:40:18 UTC
*** Issue 74419 has been marked as a duplicate of this issue. ***
Comment 6 Frank Schönheit 2007-02-12 07:25:14 UTC
Uhm ...

I suppose the need for the new symbol (btw: how does it look when demangled?)
comes from the usage of boost::optional. However, I where this symbol would be
found - does boost come with some libs to link to, which just need to be added
to some .mk file?

Also, I couldn't find a difference between this project and others which use
this class from boost, e.g. dbaccess.

No, sorry, I don't have an idea here ...
Comment 7 pavel 2007-02-12 07:32:21 UTC
The symbol is

boost::throw_exception(std::exception const&)

sb: do you have an idea?
Comment 8 Stephan Bergmann 2007-02-12 08:23:53 UTC
I do not really have an idea.  The standard OOF680m7 works fine
without mentioning symbol boost::throw_exception(std::exception const&) in
dlgedobj.o.  Then again, that build uses boost from the OOo code base.  Anyway,
that boost defines boost::throw_exception in the boost/throw_exception.hpp
header, suspiciously conditionalized on BOOST_NO_EXCEPTIONS.  Maybe related is
that basctl/source/dlged/ does not list dlgedobj in
EXCEPTIONSFILES; a wild guess, but you could try whether that would help.
Comment 9 2007-02-12 08:35:36 UTC
Comment 10 maho.nakata 2007-02-13 02:13:18 UTC
Boost of FreeBSD(from ports), definition of BOOST_NO_EXCEPTIONS is
conditional. I inserted 
#error "BOOST_NO_EXCEPTIONS not defined"
#error "BOOST_NO_EXCEPTIONS defined"

in source/inc/dlgedobj.hxx, both build have failed.

BTW: following patch helped me.

Index: basctl/source/dlged/
RCS file: /cvs/script/basctl/source/dlged/,v
retrieving revision 1.7
diff -u -r1.7
--- basctl/source/dlged/     2 Jan 2007 15:51:33 -0000       1.7
+++ basctl/source/dlged/     13 Feb 2007 00:06:27 -0000
@@ -59,6 +59,7 @@
 EXCEPTIONSFILES=$(SLO)$/dlged.obj      \
+               $(SLO)$/dlgedobj.obj \
                                $(SLO)$/dlgedfac.obj    \
                                $(SLO)$/dlgedlist.obj   \
                                $(SLO)$/dlgedclip.obj   \

Comment 11 Stephan Bergmann 2007-02-13 08:09:18 UTC
@maho:  So while it remains a mystery exactly how EXCEPTIONSFILES
and boost/throw_exception.hpp interact, your patch to the is the
right fix anyway.
Comment 12 maho.nakata 2007-02-14 02:10:24 UTC
does this patch help for you?

Comment 13 ht990332 2007-02-14 08:39:40 UTC
Yes, it does fix it. Thank you maho.
Comment 14 pavel 2007-02-14 08:54:18 UTC
Hmm, this bug affects some newer compilers even on

Is it safe enough to be done as masterfix on OOF680 as well?
Comment 15 rt 2007-02-14 08:56:11 UTC
I just wanted to ask for a target for this issue ...
Comment 16 pavel 2007-02-14 09:10:55 UTC
Thank everyone for identifying this issue.

I approve the fix for OOF680_m8.
Comment 17 rt 2007-02-14 09:28:17 UTC
Maho's patch has been committed to mws_oof680 branch, will be in milestone m8.
Comment 18 rt 2007-02-14 09:30:49 UTC
Committed to HEAD, too. Will get in next SRC680 milestone.

Issue back to submitter for verification & close.
Comment 19 maho.nakata 2007-02-15 05:44:20 UTC
verified in mws_oof680.
Comment 20 maho.nakata 2007-02-19 03:41:07 UTC
seen on OOF680_m8.