Bug 283771 - Linking against boost libraries fails
Summary: Linking against boost libraries fails
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: boost
Version: rawhide
Hardware: All
OS: Linux
medium
low
Target Milestone: ---
Assignee: Benjamin Kosnik
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-09-09 00:58 UTC by Deji Akingunola
Modified: 2013-08-09 05:48 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-09-20 03:58:32 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Deji Akingunola 2007-09-09 00:58:39 UTC
Description of problem: I'm getting the following errors while trying to link
against boost_regex.so and boost_regex-mt.so (was rebuilding a fedora package
called referencer); i guess boost needs to be rebuilt against newer icu.
...
configure:3533: checking for main in -lboost_regex-mt
configure:3562: g++ -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
-fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  
conftest.cpp -lboost_regex-mt   >&5
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex-mt.so:
undefined reference to `u_isblank_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex-mt.so:
undefined reference to `u_digit_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex-mt.so:
undefined reference to `u_isspace_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex-mt.so:
undefined reference to `u_charType_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex-mt.so:
undefined reference to `u_charFromName_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex-mt.so:
undefined reference to `u_tolower_3_7'
collect2: ld returned 1 exit status
...
configure:3468: checking for main in -lboost_regex
configure:3497: g++ -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
-fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  
conftest.cpp -lboost_regex   >&5
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex.so:
undefined reference to `u_isblank_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex.so:
undefined reference to `u_digit_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex.so:
undefined reference to `u_isspace_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex.so:
undefined reference to `u_charType_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex.so:
undefined reference to `u_charFromName_3_7'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libboost_regex.so:
undefined reference to `u_tolower_3_7'



Version-Release number of selected component (if applicable):


How reproducible: always


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Deji Akingunola 2007-09-15 12:17:42 UTC
Ping !!
A bug fix for referencer is being held because of this. Thanks.

Comment 2 Adrian Reber 2007-09-17 09:51:17 UTC
I have the same error trying to update source-highlight.

Comment 3 José Matos 2007-09-17 10:36:40 UTC
I had the same problem when compiling the lyx source.

I found two interesting facts :-)

First a bug in boost where boost_regex uses ICU library without linking to it.
http://svn.boost.org/trac/boost/ticket/1083

From there I notice that u_digit_3_7 is strangely closed to the version of 
libicu that is installed:
libicu-3.8-0.2.d02.fc8

$ grep u_digit /usr/include/unicode/*
/usr/include/unicode/uchar.h: * This is equivalent to u_digit(c, 16)>=0.
/usr/include/unicode/uchar.h:u_digit(UChar32 ch, int8_t radix);
/usr/include/unicode/uchar.h: * @see     u_digit
/usr/include/unicode/urename.h:#define u_digit u_digit_3_8

So it seems that boost needs to be rebuilt with the latest libicu.


Comment 4 José Matos 2007-09-17 14:04:40 UTC
(In reply to comment #3)
> 
> First a bug in boost where boost_regex uses ICU library without linking to 
it.
> http://svn.boost.org/trac/boost/ticket/1083

In case it was not clear I am not implying that F-8 (to be) has this problem 
but only that this lead me to the find what was the problem.

Rebuilding the source rpm fixed the problem.



Comment 5 Benjamin Kosnik 2007-09-20 00:48:01 UTC
I'm rebuilding this now. Thanks for the heads up.

Comment 6 Deji Akingunola 2007-09-20 03:58:32 UTC
I was able to rebuild referencer successfully with the re-built boost. it'll be
great though if the root cause (as noted in comment #3) could be fixed. 


Note You need to log in before you can comment on or make changes to this bug.