**

一、 出现的问题

**

QT和opencv工程,在linux下进行编译,在工程目录下执行:

mkdir build && cd build
cmake ..
make

完成之后,执行生成的可执行文件,如:

./helloworld

出现一下问题:

/helloword/build$ ./helloworld 
./helloworld: /lib/x86_64-linux-gnu/libz.so.1: version `ZLIB_1.2.9' not found (required by /home/cpe/anaconda3/lib/libpng16.so.16)

**

二、解决方法:

**
参考以下方法:
https://www.cnblogs.com/wayne-tao/p/12434421.html
https://www.cnblogs.com/zealGIS/p/15227431.html

方法一
我查了一下,我安装的也是zlib1.2.8,还有一个apt安装的zlib1.2.11,下载,安装,解决了问题,指令代码如下:

 wget http://www.zlib.net/fossils/zlib-1.2.9.tar.gz
 tar -xvf zlib-1.2.9.tar.gz
 cd zlib-1.2.9
 mkdir build
 cd build
 cmake ..
 make
 make install

方法二,出现的原因是:

 升级ubuntu18后,mindMaster打不开,报错如下:
 /opt/MindMaster-6/libexec/QtWebEngineProcess: /opt/MindMaster-6/libexec/../lib/libz.so.1: version 'ZLIB_1.2.9' not found (required by /usr/lib/x86_64-linux-gnu/libpng16.so.16

解决的方法同方法一类似,
下载zlib1.2.9版本,将编译出来的文件,替换到mindmaster安装目录。
注:这个编译出来的zlib1.2.9可以根据自己出现的问题中的文件夹做调整,不一定是mindmaster目录。
因此我编译出来需要替换到x86_64-linux-gnu目录下。
执行命令:

sudo cp libz.so.1 /lib/x86_64-linux-gnu
sudo cp libz.so.1.2.9 /lib/x86_64-linux-gnu

我复制了libz.so.1和libz.so.1.2.9到我的目录x86_64-linux-gnu下。

总的步骤是:
采用方法一,下载zlib-1.2.9.tar.gz,解压,编译;
再根据方法二的方法,将编译生成的libz.so.1和libz.so.1.2.9两个文件,复制当相应的目录下。

Logo

更多推荐