- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从 HTTPS_Curl_Easy 示例项目开始构建 Azure Sphere C 应用程序。我需要json解析,所以我下载了Jansson库代码。 Jansson 在使用 Cmake 时生成的项目不会添加为对我的 Sphere 项目的引用,因为它面向 Win32,因此我创建了一个空的 Azure sphere 库项目,将所有 jansson 代码复制到其中,并弄乱了定义的变量,直到项目已编译。
现在我正在尝试将该 Jansson 库添加到我的 HTTPS_Curl_Easy 示例中,但是我无法让它在项目中可用(它说 jansson.h 不可用):
两个具体问题:
在 azure Sphere 库项目中,如何告诉它导出什么?项目模板有一个 Inc\Public 文件夹 - 头文件是否必须位于其中? (我的不是,因为源代码不会在那里构建)
如何在 Azure Sphere 项目中添加对库项目的引用?我右键单击该项目,然后单击“添加”->“引用”来添加我的 jansson_sphere 库项目,但尽管它位于项目文件中,但它并未显示在我能找到的任何依赖项列表中。
我的项目的源代码和我构建 Jansson 的尝试位于 github 中:https://github.com/Joon/HTTPS_Curl_Easy
最佳答案
要将外部库添加到 Azure Sphere 版本,您需要更新 CMakeLists.txt 文件。
下面是一个可以运行的 CMakeLists.txt 文件的示例,这里是一个存储库的链接,显示了一个外部库,该库在 MT3620 RDB 上执行延迟并闪烁 LED1。
https://github.com/AdamBaumgartner42/azsphere_ext_library
更新了 CMakeLists.txt 文件
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
cmake_minimum_required (VERSION 3.10)
project (azsphere_ext_library C)
azsphere_configure_tools(TOOLS_REVISION "21.07")
azsphere_configure_api(TARGET_API_SET "10")
# External Library Add
add_library(MyStaticLib STATIC delay.c)
# Create executable
add_executable (${PROJECT_NAME} main.c)
# add the external library to the "target_link_libraries" list
target_link_libraries (${PROJECT_NAME} MyStaticLib applibs pthread gcc_s c)
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "template_appliance.json")
azsphere_target_add_image_package(${PROJECT_NAME})
关于c - 如何在 Azure Sphere Visual Studio 项目中添加库依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57621960/
我是一名优秀的程序员,十分优秀!