【好签源码】【源码时代合作】【拳皇kof源码】mqtt c源码

时间:2024-11-20 22:36:40 分类:五金店管理系统源码是什么 来源:最炫表白网站flash源码

1.windows下paho.mqtt安装教程(C/C++)

mqtt c源码

windows下paho.mqtt安装教程(C/C++)

       (1)Github仓库地址:

       C库:

       C++库:

       (2)Visual Studio (社区版即可)

       (3)CMake

       选择最新版本的Installer即可:

       安装过程比较简单,一路next,注意把CMake加到系统路径里即可:

       2、编译C库

       这里的主要步骤均来自于仓库的readme。

       首先clone源码到本地文件夹,例如MQTT\paho.mqtt.c ,好签源码它包含几个文件夹:

       然后打开CMake客户端,需要依次完成以下步骤:

       (1)选择源代码路径,也就是source code:

       这个路径就是上面clone的路径。

       (2)选择输出路径,CMake会将生成的vs工程保存在这个路径下,这里为了方便,可以直接在源码路径下新建一个文件夹,例如build:

       (3)配置configure,点开后如下:

       第一个是选择VS的版本,一般选择比较高的即可,这里是源码时代合作。然后选择输出平台,可根据情况选择x或win。这里没有特殊参数,就可以忽略Optional toolset...,然后选择下面的工具链为跨平台:

       整体的选择如下:

       然后点击Next,选择cmke文件夹下的toolchain:

       这里根据前面选择的输出平台选择win或者,然后点击完成。

       CMake界面如下,拳皇kof源码显示配置完成:

       然后可以看到一大片红色区域,它是CMake的编译选项,这里主要关注一下PAHO即可,点击展开后,有如下选项:

       这些选项都很好理解,可以看仓库的介绍,这里截取一部分如下:

       这里注意,选择的领取空投源码PAHO_BUILD_SHARED或者 PAHO_BUILD_STATIC最好是和后面编译C++版本的选项要一致。我这里选择SHARED。

       这里要注意一点,记住这个路径,后面编译C++库会用到:

       (4)点击生成(Generate),产生VS工程目录,位置在第(2)步选择的那个路径。

       然后就可以通过VS编译了,完成后,星空php源码可以看到

       这些是编译C++库需要的一些文件。

       最后一步:安装生成的这些库文件,方便后续编译C++库文件。

       首先在源码路径打开命令行窗口或者powershell,输入如下命令,并执行:

       这一步的意义是把编译出的文件安装到指定的目录,这个目录就是第(3)步末尾提示的那个CMAKE_INSTALL_PREFIX路径,后面编译C++库文件时会用到,当然也可以在CMake中指定别的目录,如果默认的这个目录需要管理员权限才能创建,可以选择一个普通的目录(当然也可以管理员权限运行这条命令)。

       这个目录下的文件如图:

       后面会用到\lib\cmake\eclipse-paho-mqtt-c路径下的几个文件。

       3、编译C++库

       同样先把源码clone下来,然后打开CMake,按照上面编译C库的方式设置那些选项,但不需要设置工具链,直接默认即可。

       点击完成后会报错:

       原因是没找到eclipse-paho-mqtt-c,它就是刚刚要设置的C库安装目录,找到设置这个路径的CMake的选项如下,填上C库的安装目录:

       然后重新配置,就成功了。

       下一步点击生成,会报新的错误:

       原因是CMakeList里行报错:

       这里是要编译静态库版本,这与C库生成的不符合,直接把这个if编译选项去掉即可。

       再次尝试又会报错:

       原因是CMakeList选择的是security版本,这里在git仓库也有描述:

       所以,我们看C库的安装目录下是哪个,就把CMakeList里替换掉:

       将eclipse-paho-mqtt-c::paho-mqtt3as替换为eclipse-paho-mqtt-c::paho-mqtt3a 就大功告成,点击生成,就全部完成了,打开生成的VS工程,编译。

       整个过程要注意的是:C库的编译选项和C++库的编译选项最好保持一致。