使用cmake-gui编译源码以及使用VS2017编译生成相关库

文章目录

  • 1. 前言
    • 1.1 下载libzmq源码
  • 2. 使用cmake-gui编译libzmq
    • 2.1 安装cmake-gui
    • 2.2 编译
    • 2.3 vs2017打开工程
    • 2.4 注意事项
  • 3.vs2017直接编译zeromq-x-master

1. 前言

最近一段时间项目里在用ZeroMQ消息队列,正好有个同事想用下现成的库,索性在此记录下如何编译第三方库的源码以及生成对应的库文件。

以编译zeromq源码为例:

1.1 下载libzmq源码

源码:libzmq
版本:releases-v4.3.4
点链接进去github,右侧code下载压缩包到本地并解压。

2. 使用cmake-gui编译libzmq

2.1 安装cmake-gui

附上链接:cmake-gui使用教程
版本:3.20.4

2.2 编译

注意!!! 源码文件夹路径必须全英文名!不然cmake识别不了
点击打开cmake-gui,直接上截图:
使用cmake-gui编译源码以及使用VS2017编译生成相关库_第1张图片
生成成功:
使用cmake-gui编译源码以及使用VS2017编译生成相关库_第2张图片

2.3 vs2017打开工程

在你生成的工程里找到ZeroMQ.sln右键选择vs打开;
如下图,左侧资源管理器:
使用cmake-gui编译源码以及使用VS2017编译生成相关库_第3张图片

2.4 注意事项

  1. 需要注意的是,cmake-gui构建时选择的是win32或者x64,那么对应生成的工程也都是基于这个的。不能在构建好的工程下(比如win32)非要生成x64位的库,这样是不行的。想要生成另外一种库,那就重新用cmake-gui构建一波再编译。
  2. 在libzmq-master\builds\deprecated-msvc\vs2017\下有个libzmq.sln解决方案,但并不是我们想要的vs下编译方式,可能会有问题,不建议在这浪费时间。

3.vs2017直接编译zeromq-x-master

这里记录一下,我最早编译的是这个源码的过程。(不是libzmq)。两者还是有差别的。
也附上下载链接:https://github.com/zeromq/zeromq4-x
其实这个才是我本来今天的主题(哈哈哈)。这一版,里面直接有.sln解决方案,可以不用cmake-gui编译。直接使用vs来编译。

①下载好源码并解压后:打开这个路径:zeromq4-x-master/builds/msvc
②在该路径下你可以看到:
使用cmake-gui编译源码以及使用VS2017编译生成相关库_第4张图片
③打开msvc10.sln解决方案(另外两个忘记了试没试过):
使用cmake-gui编译源码以及使用VS2017编译生成相关库_第5张图片
它的最大好处就是直接在vs下可以任意选择生成对应版本的.lib、.dll !!!
这里只做记录,其实cmake用着也很简单。用着舒服就行。

你可能感兴趣的:(C++,c++,libzmq源码编译,.lib,.dll)