Menu

ccpunit on windows with cygwin builds problem

Help
tabish
2006-03-31
2013-04-22
  • tabish

    tabish - 2006-03-31

    I'm trying to use CppUnit on a project that is to build on both windows and linux.  Currently the Linux side builds and runs fine.  I downloaded the install of cppunit on windows and did a ./configure and make install which placed libs in cygwin/lib

    libcppunit.a
    libcppunit.dll.a
    libcppunit.la

    I've created a managed c++ make on windows and have specified that it should link in cppunit.

    I get these linker errors and I can't seem to solve this one.  Can anyone offer any advice. 

    g++ -LE:\Eclipse\ActiveMQ/activemq-cpp/out -oactivemq-cppTest ./test/main.o ./test/activemq/ActiveMQExceptionTest.o -lactivemq -lcppunit
    ./test/activemq/ActiveMQExceptionTest.o: In function `_GLOBAL__D_.._test_activemq_ActiveMQExceptionTest.cpp_9D2164D3_454439BC':
    /cygdrive/e/Eclipse/ActiveMQ/activemq-cppTest/Debug/../test/activemq/ActiveMQExceptionTest.cpp:5: undefined reference to `CppUnit::TestSuiteBuilderContextBase::~TestSuiteBuilderContextBase()'
    /cygdrive/e/Eclipse/ActiveMQ/activemq-cppTest/Debug/../test/activemq/ActiveMQExceptionTest.cpp:5: undefined reference to `CppUnit::TestSuiteBuilderContextBase::~TestSuiteBuilderContextBase()'
    ./test/activemq/ActiveMQExceptionTest.o: In function `_ZN7CppUnit11TestFixtureD1Ev':
    /usr/local/include/cppunit/TestFixture.h:(.text$_ZN7CppUnit23TestSuiteBuilderContextIN8activemq21ActiveMQExceptionTestEED1Ev[CppUnit::TestSuiteBuilderContext<activemq::ActiveMQExceptionTest>::~TestSuiteBuilderContext()]+0x16): undefined reference to `CppUnit::TestSuiteBuilderContextBase::~TestSuiteBuilderContextBase()'
    /usr/local/include/cppunit/TestFixture.h:(.text$_ZN7CppUnit27TestSuiteBuilderContextBaseC2ERKS0_[CppUnit::TestSuiteBuilderContextBase::TestSuiteBuilderContextBase(CppUnit::TestSuiteBuilderContextBase const&)]+0xb): undefined reference to `vtable for CppUnit::TestSuiteBuilderContextBase'
    /usr/local/include/cppunit/TestFixture.h:(.text$_ZN7CppUnit23TestSuiteBuilderContextIN8activemq21ActiveMQExceptionTestEED0Ev[CppUnit::TestSuiteBuilderContext<activemq::ActiveMQExceptionTest>::~TestSuiteBuilderContext()]+0x16): undefined reference to `CppUnit::TestSuiteBuilderContextBase::~TestSuiteBuilderContextBase()'

     
    • Dima

      Dima - 2006-04-04

      I had the same problems:
      $ g++ *.cpp -lcppunit
      /cygdrive/c/DOCUME~1/dima/LOCALS~1/Temp/cc1r4zAp.o:MoneyTest.cpp:(.text$_ZN9Mone
      yTest5suiteEv[MoneyTest::suite()]+0x1c4): undefined reference to `CppUnit::TestS
      uiteBuilderContextBase::~TestSuiteBuilderContextBase()'
      /cygdrive/c/DOCUME~1/dima/LOCALS~1/Temp/cc1r4zAp.o:MoneyTest.cpp:(.text$_ZN9Mone
      yTest5suiteEv[MoneyTest::suite()]+0x249): undefined reference to `CppUnit::TestS
      uiteBuilderContextBase::~TestSuiteBuilderContextBase()'
      /cygdrive/c/DOCUME~1/dima/LOCALS~1/Temp/cc1r4zAp.o:MoneyTest.cpp:(.text$_ZN7CppU
      nit23TestSuiteBuilderContextI9MoneyTestED1Ev[CppUnit::TestSuiteBuilderContext<Mo
      neyTest>::~TestSuiteBuilderContext()]+0x16): undefined reference to `CppUnit::Te
      stSuiteBuilderContextBase::~TestSuiteBuilderContextBase()'
      /cygdrive/c/DOCUME~1/dima/LOCALS~1/Temp/cc1r4zAp.o:MoneyTest.cpp:(.text$_ZN7CppU
      nit27TestSuiteBuilderContextBaseC2ERKS0_[CppUnit::TestSuiteBuilderContextBase::T
      estSuiteBuilderContextBase(CppUnit::TestSuiteBuilderContextBase const&)]+0xb): u
      ndefined reference to `vtable for CppUnit::TestSuiteBuilderContextBase'
      /cygdrive/c/DOCUME~1/dima/LOCALS~1/Temp/cc1r4zAp.o:MoneyTest.cpp:(.text$_ZN7CppU
      nit23TestSuiteBuilderContextI9MoneyTestED0Ev[CppUnit::TestSuiteBuilderContext<Mo
      neyTest>::~TestSuiteBuilderContext()]+0x16): undefined reference to `CppUnit::Te
      stSuiteBuilderContextBase::~TestSuiteBuilderContextBase()'
      collect2: ld returned 1 exit status

      Then I call cppunit-config:
      $ cppunit-config --libs
      -L/usr/local/lib -lcppunit

      So I changed command line to
      $ g++ *.cpp -L/usr/local/lib -lcppunit

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.