Ubuntu13.10下Cppunit1.12.1安装记录

环境介绍

ubuntu version: 13.10
gcc, g++ version: 4.8.1
cppunit version: 1.12.1

cppunit 可以在该处下载cppunit传送门

安装过程

解压以后, 安装仍然是传统的三步骤:

  1. ./configure
  2. make
  3. sudo make install

configure的过程能够很容易的通过, 当进行make的时候, 则出现了如下的错误:

g++ -g -O2 -o .libs/DllPlugInTester DllPlugInTester.o CommandLineParser.o  -ldl ../../src/cppunit/.libs/libcppunit.so -lm 
../../src/cppunit/.libs/libcppunit.so: undefined reference to `dlsym'
../../src/cppunit/.libs/libcppunit.so: undefined reference to `dlopen'
../../src/cppunit/.libs/libcppunit.so: undefined reference to `dlclose'
collect2: error: ld returned 1 exit status
make[2]: *** [DllPlugInTester] Error 1
make[2]: Leaving directory `/home/xc-pc/software/cppunit-1.12.1/src/DllPlugInTester'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/xc-pc/software/cppunit-1.12.1/src'
make: *** [all-recursive] Error 1

从上面的提示可以看出, 问题是出在DllPlugInTester编译的过程中, 出现这个问题的可能原因是g++的版本为4.8.1.

解决办法

cd到DllPlugInTester目录下,

vi Makefile

LDFLAGS=后面加上, LDFLAGS=-Wl,--no-as-need, 然后再次make, 如果在其他的目录又出现类似的问题, 用同样的方法进行处理即可. 最后利用sudo make install完成安装

具体测试时候的问题

在具体使用的过程中, 会出现找不到libcppunit.so.1**类似的错误, 原因是没有将路径添加到环境变量, 可以通过以下步骤实现:

  1. vi /etc/ld.so.conf添加一行/usr/local/lib然后运行sudo ldconfig即可
  2. export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

你可能感兴趣的:(ubuntu,gcc,cppunit,dlsym)