迁移自己windows项目到ubuntu18.4环境过程

迁移自己windows项目到ubuntu18.4环境过程

 本身项目依赖很多的开源架构和库:ACE,BOOST,CPPCONNECTOR,IBM MQ,因此迁移过程中出现了很多的问题,现一一做个记录,一来加深和巩固自己的知识,二来为其他有此问题的朋友提供点帮助。

1、今天编译整个工程的时候出现了2个问题:

    一:老是提示找不到文件定义:/tmp/ccImpFvf.o: In function `main':
                                   Ychz.cpp:(.text+0x1f): undefined reference to `CAddedFunction::initialize()'

        所有的函数都找不到定义,必须在命令行 g++的后面增加上所有依赖的 .o库解决了。原来并不是把所有的依赖都放到第一行的目标:依赖 中的依赖就行了,还必须保证g++命令也能找到才行.

 二、链接时,/user/lib/ld老是提示找不到文件,命名路径什么的都已经给过了,经过查找资料定位分析,必须在/usr/lib/x86_64-linux-gnu/目录下面使用软链接命令 ln -s 源文件 目标文件 建立连接才可以.把so库的版本去掉如 ln -s libboost_filesystem.so.1.65.1  libboost_filesystem.so

2、安装ACE库的命令为:apt-get install libace-dev.

3、安装ZMQ库的命令为:apt-get install libzmq3-dev.

4、安装cppconnector命令:apt-get install libmysqlcppconn-dev.安装完成后可以使用命令: find / -name "*cppconn*" -type f查看安装到那个目录了.

5、下载ubuntu IBM MQ安装包:https://developer.ibm.com/tutorials/mq-connect-app-queue-manager-ubuntu/#step-2-download-ibm-mq;安装IBM MQ请参考:https://developer.ibm.com/tutorials/mq-connect-app-queue-manager-ubuntu/#step-2-download-ibm-mq.安装过程中忠出现了以前的坑:

     一、执行apt install "ibmmq-*"时一定要在/opt/MQServer目录下面执行.apt下的文件名为ibmmq-install.list,当时写为了libmmq-install.list不知道是不是有问题;

   二、安装完成后,无法通过crtmqm创建队列管理器,增加root到mqm组(当天没起作用扔不能穿件),第二天重启后才可以创建.

6、一定要区分makefile的文件依赖和g++文件的依赖,否则容易出现想不到的问题。

7、由于操作系统自带的boost库只有一部分,缺少了诸如boost_log等库,使用apt-cache search boost查看一共有多少boost库,选择需要的安装

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值