m0_74152336 2024-09-12 16:07 采纳率: 7.1%
浏览 6
已结题

(标签-android|关键词-app)

报错信息:

CMake Error: The source directory "D:/android/8_Car2021_Example_v1.1/app/  -DOpenCV_DIR=D:/android/OpenCV-android-sdk" does not exist.
Specify --help for usage, or press the help button on the CMake GUI. : com.android.ide.common.process.ProcessException: C++ build system [configure] failed while executing:
@echo off
"D:\\Android\\SDK\\cmake\\3.22.1\\bin\\cmake.exe" ^
"-HD:\\android\\8_Car2021_Example_v1.1\\app" ^
"-DCMAKE_SYSTEM_NAME=Android" ^
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON" ^
"-DCMAKE_SYSTEM_VERSION=24" ^
"-DANDROID_PLATFORM=android-24" ^
"-DANDROID_ABI=x86" ^
"-DCMAKE_ANDROID_ARCH_ABI=x86" ^
"-DANDROID_NDK=D:\\android\\SDK\\ndk\\27.1.12297006" ^
"-DCMAKE_ANDROID_NDK=D:\\android\\SDK\\ndk\\27.1.12297006" ^
"-DCMAKE_TOOLCHAIN_FILE=D:\\android\\SDK\\ndk\\27.1.12297006\\build\\cmake\\android.toolchain.cmake" ^
"-DCMAKE_MAKE_PROGRAM=D:\\Android\\SDK\\cmake\\3.22.1\\bin\\ninja.exe" ^
"-DCMAKE_CXX_FLAGS=-std=gnu++11" ^
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=D:\\android\\8_Car2021_Example_v1.1\\app\\build\\intermediates\\cxx\\Debug\\291914q2\\obj\\x86" ^
"-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=D:\\android\\8_Car2021_Example_v1.1\\app\\build\\intermediates\\cxx\\Debug\\291914q2\\obj\\x86" ^
"-DCMAKE_BUILD_TYPE=Debug" ^
"-BD:\\android\\8_Car2021_Example_v1.1\\app\\.cxx\\Debug\\291914q2\\x86" ^
-GNinja ^
"  -DOpenCV_DIR=D:/android/OpenCV-android-sdk"
from D:\android\8_Car2021_Example_v1.1\app

img

img

img

  • 写回答

27条回答 默认 最新

  • 才华横溢caozy 2024-09-12 17:26
    关注
    获得0.15元问题酬金

    以下答案是由GPT4-pro回答,本人整理后的结果,如有帮助,还请采纳!
    你遇到的 CMake 错误信息显示源目录 "D:/android/8_Car2021_Example_v1.1/app/ -DOpenCV_DIR=D:/android/OpenCV-android-sdk" 不存在。这通常意味着 CMake 命令行中有错误的参数或路径。以下是一些解决此问题的思路和步骤:

    一、问题分析

    1. 路径问题:错误信息显示的路径 "D:/android/8_Car2021_Example_v1.1/app/ -DOpenCV_DIR=D:/android/OpenCV-android-sdk" 看起来不正确。正常情况下,CMake 的源目录路径不应该包含任何其他参数。
    2. CMake 参数问题:错误提示中包含了 -DOpenCV_DIR=D:/android/OpenCV-android-sdk,这通常是一个 CMake 的参数,但它被放在了源目录路径的末尾,导致解析错误。

    二、解决思路

    要解决这个问题,需要正确配置 CMake 参数和路径。以下是详细的解决步骤:

    1. 确认路径和目录

    确保以下路径都存在:

    • D:/android/8_Car2021_Example_v1.1/app 目录
    • D:/android/OpenCV-android-sdk 目录

    2. 检查 CMake 命令

    根据你的错误信息,CMake 命令中的参数顺序和格式可能存在问题。下面是一个标准的 CMake 命令示例:

    cmake -HD:/android/8_Car2021_Example_v1.1/app \
          -DCMAKE_SYSTEM_NAME=Android \
          -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
          -DCMAKE_SYSTEM_VERSION=24 \
          -DANDROID_PLATFORM=android-24 \
          -DANDROID_ABI=x86 \
          -DCMAKE_ANDROID_ARCH_ABI=x86 \
          -DANDROID_NDK=D:/android/SDK/ndk/27.1.12297006 \
          -DCMAKE_ANDROID_NDK=D:/android/SDK/ndk/27.1.12297006 \
          -DCMAKE_TOOLCHAIN_FILE=D:/android/SDK/ndk/27.1.12297006/build/cmake/android.toolchain.cmake \
          -DCMAKE_MAKE_PROGRAM=D:/Android/SDK/cmake/3.22.1/bin/ninja.exe \
          -DCMAKE_CXX_FLAGS=-std=gnu++11 \
          -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=D:/android/8_Car2021_Example_v1.1/app/build/intermediates/cxx/Debug/291914q2/obj/x86 \
          -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=D:/android/8_Car2021_Example_v1.1/app/build/intermediates/cxx/Debug/291914q2/obj/x86 \
          -DCMAKE_BUILD_TYPE=Debug \
          -BD:/android/8_Car2021_Example_v1.1/app/.cxx/Debug/291914q2/x86 \
          -GNinja \
          -DOpenCV_DIR=D:/android/OpenCV-android-sdk
    

    注意:

    • 源目录 -H 参数应该是指向你的项目源代码的目录。
    • 每个 CMake 参数都应该以 -D 开头,且不能放在源目录路径后面。
    • 确保每个路径用正斜杠 / 或双反斜杠 \\,不要混用。

    3. 修改 CMakeLists.txt 文件

    检查你的 CMakeLists.txt 文件,确保 OpenCV 配置正确。你可以使用 find_package 命令来查找 OpenCV:

    find_package(OpenCV REQUIRED)
    include_directories(${OpenCV_INCLUDE_DIRS})
    

    确保你的 OpenCV_DIR 路径正确指向 OpenCV 的配置文件位置。

    4. 清理并重新配置

    在项目目录下,删除 CMake 生成的缓存文件和临时文件,然后重新运行 CMake:

    rm -rf CMakeCache.txt CMakeFiles
    cmake -HD:/android/8_Car2021_Example_v1.1/app \
          -DCMAKE_SYSTEM_NAME=Android \
          -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
          -DCMAKE_SYSTEM_VERSION=24 \
          -DANDROID_PLATFORM=android-24 \
          -DANDROID_ABI=x86 \
          -DCMAKE_ANDROID_ARCH_ABI=x86 \
          -DANDROID_NDK=D:/android/SDK/ndk/27.1.12297006 \
          -DCMAKE_ANDROID_NDK=D:/android/SDK/ndk/27.1.12297006 \
          -DCMAKE_TOOLCHAIN_FILE=D:/android/SDK/ndk/27.1.12297006/build/cmake/android.toolchain.cmake \
          -DCMAKE_MAKE_PROGRAM=D:/Android/SDK/cmake/3.22.1/bin/ninja.exe \
          -DCMAKE_CXX_FLAGS=-std=gnu++11 \
          -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=D:/android/8_Car2021_Example_v1.1/app/build/intermediates/cxx/Debug/291914q2/obj/x86 \
          -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=D:/android/8_Car2021_Example_v1.1/app/build/intermediates/cxx/Debug/291914q2/obj/x86 \
          -DCMAKE_BUILD_TYPE=Debug \
          -BD:/android/8_Car2021_Example_v1.1/app/.cxx/Debug/291914q2/x86 \
          -GNinja \
          -DOpenCV_DIR=D:/android/OpenCV-android-sdk
    

    5. 使用 CMake GUI

    你也可以使用 CMake GUI 来设置这些参数。启动 CMake GUI,设置源代码目录和构建目录,手动添加和设置 OpenCV_DIR 变量,然后点击 "Configure" 和 "Generate" 按钮。

    三、总结

    1. 确保所有路径正确,且源目录路径不应包含额外参数。
    2. 调整 CMake 命令格式,确保所有参数按照正确的格式传递。
    3. 检查 CMakeLists.txt 文件 中的配置,确保与 OpenCV 的配置一致。
    4. 清理旧的 CMake 文件,重新运行配置命令。
    5. 考虑使用 CMake GUI 作为替代方案。

    通过这些步骤,你应该能够解决 CMake 配置错误并成功构建项目。如果还有其他问题或需要进一步帮助,请提供更多信息或错误日志。

    评论

报告相同问题?

问题事件

  • 系统已结题 9月20日
  • 创建了问题 9月12日

悬赏问题

  • ¥15 如何构建全国统一的物流管理平台?
  • ¥100 ijkplayer使用AndroidStudio/CMake编译,如何支持 rtsp 直播流?
  • ¥20 和学习数据的传参方式,选择正确的传参方式有关
  • ¥15 这是网络安全里面的poem code
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路