gpt4 book ai didi

cmake add_subdirectory 无法正确编译

转载 作者:行者123 更新时间:2023-11-30 17:27:59 30 4
gpt4 key购买 nike

我正在使用以下内容编写 CMakeLists.txt:

project(FullLibrary C)
enable_language(C ASM)
cmake_minimum_required(VERSION 2.8)
add_subdirectory("${PROJECT_SOURCE_DIR}/Asf")

Asf 是 Atmel 的一个基于微处理器构建的库。如果我从这个文件内部编译它,我可以直接编译它。我所做的是在目录中创建另一个包含以下内容的文件:

set ( ASF_SOURCES 
source_files_removed_for_brevity.c
)
add_library(asf4arm ${ASF_SOURCES} )
SET_TARGET_PROPERTIES(asf4arm PROPERTIES LINKER_LANGUAGE C )# CXX ASM)
SET_TARGET_PROPERTIES(asf4arm PROPERTIES LINK_FLAGS "${LINKER_FLAGS}")

编译时收到的错误是: fatal error :打开依赖文件 Asf_arm/CMakeFiles/asf4arm.dir/Asf/sam/drivers/usart/usart.c.obj:没有这样的文件或目录我检查了一下,目录是空的,但没有任何编译错误。如果我将列表复制并粘贴到主 CMakeLists.txt 中并更新路径,则所有内容都会正确编译并且库会正确生成。我想我错过了另一只眼睛可以看到的愚蠢的东西。有什么建议吗?

最佳答案

我感觉您的project_source_dir变量没有正确设置路径。

尝试将 add_subdirectory("${PROJECT_SOURCE_DIR}/Asf") 更改为 add_subdirectory(Asf)

关于cmake add_subdirectory 无法正确编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26177762/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com