由于某些众所周知的原因,github克隆代码库速度极慢,且编译之前需要克隆子模块,克隆子模块也时常失败,浪费时间。因此为了顺利编译azure-iot-sdk-c需要将github上的代码仓库克隆到gitee或本地gitlab上。
![在这里插入图片描述](https://img-blog.csdnimg.cn/d5886ebe74eb48a0906ff7491e674990.png#pic_center)
之后再使用如下命令从gitee克隆该仓库
git clone -b LTS_07_2021_Ref01 https://gitee.com/null_360_5406/azure-iot-sdk-c.git
打开克隆的仓库下的.gitmodules文件 ![在这里插入图片描述](https://img-blog.csdnimg.cn/3375b14a9e7b4a64b7178c097ba620a1.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5YWs5a2Z6Iuk6JOd,size_18,color_FFFFFF,t_70,g_se,x_16) 依次采用与azure-iot-sdk-c相同的方法将子模块克隆到gitee上。 全部克隆完毕后更改.gitmodules文件,将各模块path修改为gitee上的路径 ![在这里插入图片描述](https://img-blog.csdnimg.cn/8c3b14411436448291232fc54d599750.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5YWs5a2Z6Iuk6JOd,size_19,color_FFFFFF,t_70,g_se,x_16)
使用git submodule sync命令,将新的URL更新到文件.git/config 后续就可以按照文档说明进行编译
cd azure-iot-sdk-c
mkdir cmake
cd cmake
cmake ..
cmake --build .
sudo make install 默认安装到/usr/local下。
头文件默认安装到下面几个路径下: /usr/local/include/azureiot /usr/local/include/azure_macro_utils /usr/local/include/umock_c /usr/local/include/iothub_service_client
库文件有以下这些: /usr/local/lib/libparson.a /usr/local/lib/libumock_c.a /usr/local/lib/libaziotsharedutil.a /usr/local/lib/libuamqp.a /usr/local/lib/libumqtt.a /usr/local/lib/libuhttp.a /usr/local/lib/libiothub_service_client.a /usr/local/lib/libiothub_client.a /usr/local/lib/libiothub_client_http_transport.a /usr/local/lib/libiothub_client_amqp_transport.a /usr/local/lib/libiothub_client_amqp_ws_transport.a /usr/local/lib/libiothub_client_mqtt_transport.a /usr/local/lib/libiothub_client_mqtt_ws_transport.a /usr/local/lib/libserializer.a
|