LeanCloud C++ SDK初步安装测试记录(2)

简介:

构建cpp-netlib错误1


在我的上一篇文章(1)中,在进行到build and install cpp-netlib部分的下列命令时:


cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++

出现错误提示,如下图所示:

wKiom1cQnzKCIilTAAF_-fzgxyg849.png

意思非常明显:系统还没有安装OpenSSL库。


我立即执行如下命令:

openssl version

结果如下:

OpenSSL 0.9.8zg 14 July 2015

说明系统变量OPENSSL_ROOT_DIR还有建立。

另外,根据简单分析得知,这个0.9.8ZG版本是MAC系统自带的,而且不完全。

再如下命令:

brew link openssl --force

输出如下:


Linking /usr/local/Cellar/openssl/1.0.2f... 1561 symlinks created


其实,这个正是我以前使用brew命令安装的。进一步通过ls命令分析,这个文件夹(/usr/local/Cellar/openssl/1.0.2f)下具有齐备的一切。


于是,根据上面的错误提示,把上面的编译命令修改为如下:

cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DOPENSSL_ROOT_DIR=/usr/local/Cellar/openssl/1.0.2f -DOPENSSL_INCLUDE_DIR=/usr/local/Cellar/openssl/1.0.2f/include

这里的解决方案中,我们没有在系统环境配置文件(.bash_profile)中加入对应的环境变量。

上面的命令在运行时成功,输出如下内容:


-- Boost version: 1.60.0

-- Found the following Boost libraries:

--   unit_test_framework

--   system

--   regex

--   date_time

--   thread

--   filesystem

--   program_options

--   chrono

--   atomic

-- Found OpenSSL: /usr/lib/libssl.dylib;/usr/lib/libcrypto.dylib (found version "1.0.2f") 

-- Configuring done

-- Generating done

-- Build files have been written to: /Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/lib/cpp-netlib/cpp-netlib-build


经过上述操作后,再次构建和运行cpp-netlib成功,但是在运行其中有关的几个实例时出现错误。这个问题后面再另外撰文介绍。


构建jsoncpp库没有问题


操作步骤如下:

$ cd lib/jsoncpp
$ mkdir jsoncpp-build
$ cd jsoncpp-build
$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
$ make -j4 && make install

构建AVOSCloud C++ SDK库出现错误


按照下述步骤操作:


$ cd cpp-sdk
$ mkdir cpp-sdk-build
$ cd cpp-sdk-build
$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
$ make -j4 && make install

在进行到最后一步时出现如下所示错误:

zxz-iMac:cpp-sdk-build zxzpc$ make -j4 && make install

Scanning dependencies of target avoscloud

[ 14%] Building CXX object src/CMakeFiles/avoscloud.dir/ACL/AVACL.cpp.o

[ 11%] Building CXX object src/CMakeFiles/avoscloud.dir/AVOSCloud.cpp.o

[ 14%] Building CXX object src/CMakeFiles/avoscloud.dir/ACL/AVRole.cpp.o

[ 14%] Building CXX object src/CMakeFiles/avoscloud.dir/AVObject/AVObject.cpp.o

In file included from /Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/src/ACL/AVACL.cpp:16:

/Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/include/Request/AVPaasClient.h:19:10: fatal error: 

      'boost/network/protocol/http/client.hpp' file not found

#include <boost/network/protocol/http/client.hpp>

         ^

In file included from /Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/src/AVObject/AVObject.cpp:18:

/Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/include/Request/AVPaasClient.h:19:10: fatal error: 

      'boost/network/protocol/http/client.hpp' file not found

#include <boost/network/protocol/http/client.hpp>

         ^

In file included from /Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/src/AVOSCloud.cpp:14:

/Users/zxzpc/Downloads/leancloud-cpp-sdk/cpp-sdk/include/Request/AVPaasClient.h:19:10: fatal error: 

      'boost/network/protocol/http/client.hpp' file not found

#include <boost/network/protocol/http/client.hpp>

         ^

1 error generated.

1 error generated.

make[2]: *** [src/CMakeFiles/avoscloud.dir/ACL/AVACL.cpp.o] Error 1

make[2]: *** Waiting for unfinished jobs....

make[2]: *** [src/CMakeFiles/avoscloud.dir/AVObject/AVObject.cpp.o] Error 1

1 error generated.

make[2]: *** [src/CMakeFiles/avoscloud.dir/AVOSCloud.cpp.o] Error 1

make[1]: *** [src/CMakeFiles/avoscloud.dir/all] Error 2

make: *** [all] Error 2


这种错误看起来简单,主要是头文件中嵌套引用头文件路径不对出现的错误。

.........





参考文章:


http://stackoverflow.com/questions/16248775/cmake-not-able-to-find-openssl











本文转自朱先忠老师51CTO博客,原文链接:http://blog.51cto.com/zhuxianzhong/1764206 ,如需转载请自行联系原作者










相关文章
|
4月前
|
C++ Windows
.NET Framework安装不成功,下载`NET Framework 3.5`文件,Microsoft Visual C++
.NET Framework常见问题及解决方案汇总,涵盖缺失组件、安装失败、错误代码等,提供多种修复方法,包括全能王DLL修复工具、微软官方运行库及命令行安装等,适用于Windows系统,解决应用程序无法运行问题。
312 3
|
9月前
|
前端开发 JavaScript 开发工具
【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
551 5
【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
|
9月前
|
JavaScript 编译器 开发工具
【02】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-项目开发实战-准备工具安装-编译器DevEco Studio安装-arkts编程语言认识-编译器devco-鸿蒙SDK安装-模拟器环境调试-hyper虚拟化开启-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
【02】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-项目开发实战-准备工具安装-编译器DevEco Studio安装-arkts编程语言认识-编译器devco-鸿蒙SDK安装-模拟器环境调试-hyper虚拟化开启-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
454 2
【02】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-项目开发实战-准备工具安装-编译器DevEco Studio安装-arkts编程语言认识-编译器devco-鸿蒙SDK安装-模拟器环境调试-hyper虚拟化开启-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
|
8月前
|
IDE 编译器 项目管理
Dev-C++保姆级安装教程:Win10/Win11环境配置+避坑指南(附下载验证)
Dev-C++ 是一款专为 Windows 系统设计的轻量级 C/C++ 集成开发环境(IDE),内置 MinGW 编译器与调试器,支持代码高亮、项目管理等功能。4.9.9 版本作为经典稳定版,适合初学者和教学使用。本文详细介绍其安装流程、配置方法、功能验证及常见问题解决,同时提供进阶技巧和扩展学习资源,帮助用户快速上手并高效开发。
|
算法 开发工具 计算机视觉
【零代码研发】OpenCV实验大师工作流引擎C++ SDK演示
【零代码研发】OpenCV实验大师工作流引擎C++ SDK演示
275 1
fedora安装静态c和c++库
fedora安装静态c和c++库
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
422 0
|
小程序 Serverless 开发工具
小程序开发问题之在小程序中安装并初始化小程序Serverless客户端SDK如何解决
小程序开发问题之在小程序中安装并初始化小程序Serverless客户端SDK如何解决
|
SQL Java 关系型数据库
实时数仓 Hologres产品使用合集之如何安装和使用Java SDK
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
数据可视化 API 开发工具
影创SDK☀️三、工程默认配置,及基础测试建议
影创SDK☀️三、工程默认配置,及基础测试建议