2017-07-28 91 views
0

这是关于如何在CMake中集成azure存储C++工具包。CMake包含C++ Azure

我尝试在我们的应用程序中构建一个连接到Azure blob存储,列出文件/容器,读取数据等的工具,我在Linux(Ubuntu 17.04)上工作。我已经从源代码构建了cpprestsdk和azure存储工具。

我能编一些事情,因为我从字面上添加

-I/apps/azure/inst/include

CMAKE_CXX_FLAGS。正如你所看到的我使用CMAKE_INSTALL_PREFIX=/apps/azure/inst,它用于cpprest和azure存储。

lib子目录中有一个包含.cmake文件的cpprestsdk/目录。但是我需要一个用于存储azure的.cmake文件,我可以在我自己的CMakeLists.txt中加入这个文件,它增加了我需要的东西(标志,库等)。查看这些示例显示,这些内容的构建方式只能在构建sdk时使用。

有谁知道是否有这样一个.cmake包含文件,如果是的话......它在哪里安装?

回答

0

好吧,我什么都找不到,也没有人发布答案,所以我一直在试验。简短的回答是:使用cpprest东西,并自己添加一些azure-storage指令。

我唯一能找到的是README.mdcpprest中的CMake代码。我将它放入并在需要的地方添加了我自己的天蓝色存储目录名称。

补充:(!感谢上帝)

find_path(AZURE_INST_DIR "" HINTS /apps/azure/inst REQUIRED) 

整个事情的作品,因为大批量的依赖性正在cpprest,Azure的存储本身没有额外的依赖。

注意gcc用户:关闭-Wshadow和-Woverloaded-virtual,因为cpprest和azure存储代码充斥着这些(显然这些在Visual Studio中不可用)。