[ 
https://issues.apache.org/jira/browse/QPID-3320?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Matt Stevenson updated QPID-3320:
---------------------------------

    Attachment: CMakeLists.txt

Modified version of ./cpp/src/CMakeList.txt which links the Boost system 
library along with the program_options lib and filesystem lib.  This is needed 
Boost versions > 1.35 on cygwin.  This file does not check the platform or 
boost version, it forces the linking.

> Qpid C++ build fails on Cygwin
> ------------------------------
>
>                 Key: QPID-3320
>                 URL: https://issues.apache.org/jira/browse/QPID-3320
>             Project: Qpid
>          Issue Type: Bug
>          Components: Build Tools, C++ Broker
>    Affects Versions: 0.10
>         Environment: Windows 7 64-bit running Cygwin 1.7.9
>            Reporter: Matt Stevenson
>              Labels: C++, build, cygwin
>         Attachments: CMakeLists.txt
>
>
> I am trying to build the Qpid C++ 0.10 project using gcc in Cygwin.
> I was able to configure everything fine with both cmake and ./configure, but 
> I get errors about 40% through the build, when I get to: "Creating library 
> file: libqpidcommon.dll.a"
> The first errors I got were:
> CMakeFiles/qpidcommon.dir/qpid/Modules.o:Modules.cpp:(.text+0x36): undefined 
> reference to `boost::system::get_system_category()'
> CMakeFiles/qpidcommon.dir/qpid/Modules.o:Modules.cpp:(.text+0x40): undefined 
> reference to `boost::system::get_generic_category()'
> CMakeFiles/qpidcommon.dir/qpid/Modules.o:Modules.cpp:(.text+0x4a): undefined 
> reference to `boost::system::get_generic_category()'
> CMakeFiles/qpidcommon.dir/qpid/Modules.o:Modules.cpp:(.text+0x54): undefined 
> reference to `boost::system::get_generic_category()'
> CMakeFiles/qpidcommon.dir/qpid/Modules.o:Modules.cpp:(.text+0x5e): undefined 
> reference to `boost::system::get_system_category()'
> CMakeFiles/qpidcommon.dir/qpid/Modules.o:Modules.cpp:(.text$_ZN5boost6system10error_codeC1Ev[boost::system::error_code::error_code()]+0x10):
>  undefined reference to `boost::system::get_system_category()'
> After a little research, I found that the boost system library needed to be 
> linked along with the program_options lib after boost version 1.35 (I have 
> 1.43).  Looking through ./src/CMakeList.txt I saw a few places where someone 
> was checking boost versions to include the system lib, but it wasn't being 
> linked along with program_options.  I made a few changes to link the system 
> lib which fixed the above errors.
> The other errors I could not fix are:
> CMakeFiles/qpidcommon.dir/qpid/Url.o:Url.cpp:(.text+0x783): undefined 
> reference to `qpid::sys::SystemInfo::getLocalIpAddresses(unsigned short, 
> std::vector<qpid::Address, std::allocator<qpid::Address> >&)'
> CMakeFiles/qpidcommon.dir/qpid/Url.o:Url.cpp:(.text+0xc87): undefined 
> reference to `qpid::sys::SystemInfo::getLocalHostname(qpid::Address&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x9f7):
>  undefined reference to 
> `qpid::sys::Poller::interrupt(qpid::sys::PollerHandle&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0xb11):
>  undefined reference to 
> `qpid::sys::Poller::interrupt(qpid::sys::PollerHandle&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0xb36):
>  undefined reference to 
> `qpid::sys::Poller::unregisterHandle(qpid::sys::PollerHandle&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0xbad):
>  undefined reference to 
> `qpid::sys::Poller::unregisterHandle(qpid::sys::PollerHandle&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0xd60):
>  undefined reference to 
> `qpid::sys::Poller::unregisterHandle(qpid::sys::PollerHandle&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0xe67):
>  undefined reference to 
> `qpid::sys::Poller::unmonitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0xf75):
>  undefined reference to 
> `qpid::sys::Poller::unmonitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1083):
>  undefined reference to 
> `qpid::sys::Poller::unmonitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1191):
>  undefined reference to 
> `qpid::sys::Poller::monitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x129f):
>  undefined reference to 
> `qpid::sys::Poller::monitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1424):
>  undefined reference to 
> `qpid::sys::Poller::monitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x151f):
>  undefined reference to 
> `qpid::sys::Poller::registerHandle(qpid::sys::PollerHandle&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x15a0):
>  undefined reference to 
> `qpid::sys::Poller::monitorHandle(qpid::sys::PollerHandle&, 
> qpid::sys::Poller::Direction)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1780):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x17a8):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1976):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x199e):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1b6c):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1b94):
>  more undefined references to `qpid::sys::PollerHandle::~PollerHandle()' 
> follow
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1bd2):
>  undefined reference to 
> `qpid::sys::PollerHandle::PollerHandle(qpid::sys::IOHandle const&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1dc6):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1df2):
>  undefined reference to 
> `qpid::sys::PollerHandle::PollerHandle(qpid::sys::IOHandle const&)'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.text+0x1fe6):
>  undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> CMakeFiles/qpidcommon.dir/qpid/sys/DispatchHandle.o:DispatchHandle.cpp:(.rdata$_ZTIN4qpid3sys14DispatchHandleE[typeinfo
>  for qpid::sys::DispatchHandle]+0x8): undefined reference to `typeinfo for 
> qpid::sys::PollerHandle'

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to