← Back to team overview

linux-traipu team mailing list archive

[Bug 1132648] [NEW] configure test for boost_thread fails link on OSX (Darwin 11.4)

 

Public bug reported:

In drizzle-7.2.3, compiling from source on 
MacOSX 10.7.5 (Lion), using
Xcode 4.5.2 (i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)), and
boost-1.52 from MacPorts,

The configure test for boost_thread-mt fails because linkage of conftest
fails, because use of boost_thread-mt requires linkage of boost_system-
mt.

Changing the AC_LIB_HAVE_LINKFLAGS call for boost_thread-mt (in
m4/pandora_have_libboost_thread.m4) to include boost_system-mt as a
dependency (as per the attached patch) solves the problem.

Problem (CFLAGS/LDFLAGS used to find dependencies via MacPorts):

./configure --prefix=/platform/stow/drizzle-7.2.3 CFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib
<...>
checking how to link with libboost_program_options-mt... -lboost_program_options-mt
checking for libc... (cached) no
checking for libboost_thread-mt... no
checking for libboost_thread... no
configure: error: boost::thread is required for drizzle


>From config.log:

configure:34836: g++ -o conftest -D_THREAD_SAFE  -D_THREAD_SAFE   -isystem /opt/local/include -I/opt/local/include -L/opt/local/lib conftest.cpp  -lintl   -lboost_thread-mt >&5
Undefined symbols for architecture x86_64:
  "boost::system::generic_category()", referenced from:
      __static_initialization_and_destruction_0(int, int)in ccW6zDIM.o
  "boost::system::system_category()", referenced from:
      __static_initialization_and_destruction_0(int, int)in ccW6zDIM.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
configure:34836: $? = 1

See attached patch, which just adds this library to the dependencies.
You might want to check for its existence, etc, first, if you wish to
maintain the ability to specify locations for each of the boost
libraries separately.

** Affects: drizzle
     Importance: Undecided
         Status: New

** Patch added: "Patch to add required library dependency to configure test"
   https://bugs.launchpad.net/bugs/1132648/+attachment/3545725/+files/p1

-- 
You received this bug notification because you are a member of UBUNTU -
AL - BR, which is subscribed to Drizzle.
https://bugs.launchpad.net/bugs/1132648

Title:
  configure test for boost_thread fails link on OSX (Darwin 11.4)

Status in A Lightweight SQL Database for Cloud Infrastructure and Web Applications:
  New

Bug description:
  In drizzle-7.2.3, compiling from source on 
  MacOSX 10.7.5 (Lion), using
  Xcode 4.5.2 (i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)), and
  boost-1.52 from MacPorts,

  The configure test for boost_thread-mt fails because linkage of
  conftest fails, because use of boost_thread-mt requires linkage of
  boost_system-mt.

  Changing the AC_LIB_HAVE_LINKFLAGS call for boost_thread-mt (in
  m4/pandora_have_libboost_thread.m4) to include boost_system-mt as a
  dependency (as per the attached patch) solves the problem.

  Problem (CFLAGS/LDFLAGS used to find dependencies via MacPorts):

  ./configure --prefix=/platform/stow/drizzle-7.2.3 CFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib
  <...>
  checking how to link with libboost_program_options-mt... -lboost_program_options-mt
  checking for libc... (cached) no
  checking for libboost_thread-mt... no
  checking for libboost_thread... no
  configure: error: boost::thread is required for drizzle

  
  From config.log:

  configure:34836: g++ -o conftest -D_THREAD_SAFE  -D_THREAD_SAFE   -isystem /opt/local/include -I/opt/local/include -L/opt/local/lib conftest.cpp  -lintl   -lboost_thread-mt >&5
  Undefined symbols for architecture x86_64:
    "boost::system::generic_category()", referenced from:
        __static_initialization_and_destruction_0(int, int)in ccW6zDIM.o
    "boost::system::system_category()", referenced from:
        __static_initialization_and_destruction_0(int, int)in ccW6zDIM.o
  ld: symbol(s) not found for architecture x86_64
  collect2: ld returned 1 exit status
  configure:34836: $? = 1

  See attached patch, which just adds this library to the dependencies.
  You might want to check for its existence, etc, first, if you wish to
  maintain the ability to specify locations for each of the boost
  libraries separately.

To manage notifications about this bug go to:
https://bugs.launchpad.net/drizzle/+bug/1132648/+subscriptions


Follow ups

References