x-msg-im-sdk 编译注意事项(主要是windows),可解决报: google/protobuf/message.h: No such file or directory等问题

编译前准备

查看x-msg-im的“编译在windows系统上运行的驱动”准备文档
按照以上文档操作后,仍出现问题,可按照以下注意事项进行问题排除,如果还是编译不成功,可加群721779037进行讨论

注意事项:

1、严格遵守版本限制,特别是protobuf ,尽量和要求的一致,下面的百度网盘是基于mingw gcc版本编译的protobuf-3.5.1下载地址,也可以自行编译,去protobuf的github上找到对应版本源码,然后迁下来进行编译,

链接: https://pan.baidu.com/s/1AiWFmudjooSNhG2rv1dKQA 
提取码: 4ac6 复制这段内容后打开百度网盘手机App,操作更方便哦

2、确保环境安装完成方法:在git bash命令窗口或者msys2命令窗口(由于我的机子在msys2上进行编译会很慢,因此我选择了在git bash上进行编译)分别输入
gcc, make, cmake, java, mvn,protoc --version 以上命令都不会报 xxx:command not found则代表可以正确访问对应环境,如果无法访问则输入 env命令查看环境变量是否配对,
在这里插入图片描述
在这里插入图片描述
3、在window上进行编译,注意不要漏了以下环境变量设置

//以下都是直接在当前命令窗口设置的局部环境变量,只能在当前命令窗口可用
//设置当前编译环境是在windows系统中
export PLAT=WINDOWS    

//设置protobuf环境变量 PROTOBUF 
//后面写的是protobuf的解压路径 代表c盘下的util目录下的protobuf
//如果编译的时候出现 google/protobuf/message.h: No such file or directory基本就是protobuf环境变量没有设置好

export PROTOBUF=/c/util/protobuf-3.5.1

//编译配置
export CXX_FLAGS="-g3 -O3"
export MAKE_J="-j3"

4、在迁需要编译的x-msg-im-sdk源码时,注意,如果文件后面是带有@符号的均是引用目录,不能直接通过用根目录的 git clone下载下来因为这样只是下载下来一个空目录,需要进入目录里面再复制此目录的clone地址进行下载或者使用git clone --recursive命令进行项目的clone如图
在这里插入图片描述

在这里插入图片描述
5.打包出来的x-msg-im-sdk-ffi.dll会比较大,可以用strip libx-msg-im-client-ffi.dll命令进行处理减小体积

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章