Android studio CMakeLists.txt 打印的内容位置

最近在学习 cmake  就是在安卓中 , 麻烦的要死 , 看了很多的教程 , 发现没有 多少说对打印位置在哪里 , 先说一下版本信息 , 可能你们也不一样 

gradle  配置 

apply plugin: 'com.android.application'android {compileSdkVersion 29buildToolsVersion "29.0.3"defaultConfig {applicationId "com.learn.test"minSdkVersion 25targetSdkVersion 29versionCode 1versionName "1.0"testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"externalNativeBuild {cmake {cppFlags ''abiFilters  'arm64-v8a' , 'x86'}}ndk{// 打包生成的 APK 文件指挥包含 ARM 指令集的动态库abiFilters  'arm64-v8a' , 'x86'//不同平台so/*, "arm64-v8a", "x86", "x86_64"*/}}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'}}externalNativeBuild {cmake {path file('src/main/cpp/CMakeLists.txt')version '3.22.1'}}}dependencies {implementation fileTree(dir: "libs", include: ["*.jar"])implementation 'androidx.appcompat:appcompat:1.1.0'implementation 'androidx.constraintlayout:constraintlayout:1.1.3'testImplementation 'junit:junit:4.12'androidTestImplementation 'androidx.test.ext:junit:1.1.1'androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'}

重点 CMakeLists.txt 配置 

cmake_minimum_required(VERSION 3.22.1)# 获取 Android 项目的根目录
set(ANDROID_PROJECT_ROOT ${CMAKE_SOURCE_DIR})# 使用根目录构建路径
set(ANDROID_LIB_DIR ${ANDROID_PROJECT_ROOT}/app/src/main/jniLibs/${ANDROID_ABI})# 输出路径
message("Android Project Root: ${ANDROID_PROJECT_ROOT}")
message("Android Lib Directory: ${ANDROID_LIB_DIR}")# 设置 Android NDK 的路径
set(ANDROID_NDK  /DevelopmentTool/Sdk/ndk/21.0.6113669)

这个就是一个简单打印 问题是打印内容在哪里?  找了很久终于找到位置了 

app/build/intermediates/cxx/Debug/c1z1m6iy/meta/x86/metadata_generation_stderr.txt

你就说这玩意儿有多垃圾 , 

metadata_generation_stderr.txt  名字居然是这个 

CMake Warning (dev) in CMakeLists.txt:No project() command is present.  The top-level CMakeLists.txt file mustcontain a literal, direct call to the project() command.  Add a line ofcode such asproject(ProjectName)near the top of the file, but after cmake_minimum_required().CMake is pretending there is a "project(Project)" command on the firstline.
This warning is for project developers.  Use -Wno-dev to suppress it.Android Project Root: D:/Androidstudioproject/MyApplication2/app/src/main/cpp
Android Lib Directory: D:/Androidstudioproject/MyApplication2/app/src/main/cpp/app/src/main/jniLibs/x86
CMake Warning:Manually-specified variables were not used by the project:CMAKE_EXPORT_COMPILE_COMMANDSCMAKE_LIBRARY_OUTPUT_DIRECTORYCMAKE_RUNTIME_OUTPUT_DIRECTORY

这里面就是 message 输出的内容 , 真的很垃圾 

目前并不知道拿到路径方式 只能采用这种方式 , 你们可以在网上打印

# 获取 Android 项目的根目录(相对于 CMakeLists.txt 所在目录)
get_filename_component(ANDROID_PROJECT_ROOT ${CMAKE_CURRENT_LIST_DIR}/../../.. REALPATH)# 构建相对路径
set(RELATIVE_PATH src/main/java/com/learn/test)# 构建完整路径
set(JAVA_SOURCE_DIR ${ANDROID_PROJECT_ROOT}/${RELATIVE_PATH})# 在这里可以使用 JAVA_SOURCE_DIR 变量来设置路径
message("Java Source Directory: ${JAVA_SOURCE_DIR}")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/308173.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java毕业设计—vue+springboot高校宿舍管理系统

1,绪论 研究背景 学生管理是学校教育系统的一个十分重要的部分,其中学生宿舍的管理又是学校管理中较复杂的一部分。学生宿舍不只是简单的一个居住场所,而是高校实施教育过程,培养人才不可或缺的一个硬件条件,是大学文…

68内网安全-域横向PTHPTKPTT哈希票据传递

今天讲PTH&PTK&PTT, PTH(pass the hash) #利用 lm 或 ntlm 的值进行的渗透测试 PTT(pass the ticket) #利用的票据凭证 TGT 进行的渗透测试 用的Kerberos 协议 PTK(pass the key) #利用的 ekeys aes256 进行的渗透测试 lm加密算法是2003以前的老版&…

写回(write back)与 写分配(write allocate)的差异

写回(write back): 写回是一种缓存策略,它延迟将修改后的数据写入主存。当发生写入操作时,修改的数据首先被写入缓存中。相应的缓存行被标记为“脏”,表示已经被修改。写操作在此时被视为完成,…

【持续更新ing】uniapp+springboot实现个人备忘录系统【前后端分离】

目录 (1)项目可行性分析 (2)需求描述 (3)界面原型 (4)数据库设计 (5)后端工程 接下来我们使用uniappspringboot实现一个简单的前后端分离的小项目----个…

java爬虫(jsoup)如何设置HTTP代理ip爬数据

目录 前言 什么是HTTP代理IP 使用Jsoup设置HTTP代理IP的步骤 1. 导入Jsoup依赖 2. 创建HttpProxy类 3. 设置代理服务器 4. 使用Jsoup进行爬取 结论 前言 在Java中使用Jsoup进行网络爬虫操作时,有时需要使用HTTP代理IP来爬取数据。本文将介绍如何使用Jsoup设…

UI演示双视图立体匹配与重建

相关文章: PyQt5和Qt designer的详细安装教程:https://blog.csdn.net/qq_43811536/article/details/135185233?spm1001.2014.3001.5501Qt designer界面和所有组件功能的详细介绍:https://blog.csdn.net/qq_43811536/article/details/1351868…

如何使用Docker将.Net6项目部署到Linux服务器(三)

目录 四 安装nginx 4.1 官网下载nginx 4.2 下载解压安装nginx 4.3 进行configure 4.4 执行make 4.5 查看nginx是否安装成功 4.6 nginx的一些常用命令 4.6.1 启动nginx 4.6.2 通过命令查看nginx是否启动成功 4.6.3 关闭Nginx 4.6.5 重启Nginx 4.6.6 杀掉所有Nginx进程 4.…

Macos多协议远程管理---Termius中文

Termius是一款跨平台的终端管理工具,支持Windows、macOS、Linux、iOS和Android等多个操作系统。它提供了一个友好的用户界面和强大的功能,使用户能够远程连接和管理服务器。Termius的基本功能包括终端连接、SSH隧道、文件传输、组织和标记、快捷方式和别…

Transformer(seq2seq、self-attention)学习笔记

在self-attention 基础上记录一篇Transformer学习笔记 Transformer的网络结构EncoderDecoder 模型训练与评估 Transformer的网络结构 Transformer是一种seq2seq 模型。输入一个序列,经过encoder、decoder输出结果也是一个序列,输出序列的长度由模型决定…

【Bootstrap学习 day4】

Bootstrap5 列表组 使用Bootstrap创建列表 可以创建三种不类型的HTML列表: 无序列表—顺序无关紧要的项目列表。无序列表中的列表标有项目符号,例如。、等ul>li有序列表—顺序确实很重要的项目列表。有序列表中的列表项用数字标记,例如1、…

Hbase详解

Hbase 概念 base 是分布式、面向列的开源数据库(其实准确的说是面向列族)。HDFS 为 Hbase 提供可靠的底层数据存储服务,MapReduce 为 Hbase 提供高性能的计算能力,Zookeeper 为 Hbase 提供稳定服务和 Failover 机制,…

Android Camera

1. 相关的API Android有三套关于摄像头的API(库),分别是Camera、Camera2和CameraX,其中Camera已废弃,在Android5.0以后推荐使用Camera2和CameraX,Camera2推出是用来替换Camera的,它拥有丰富的API可以为复杂的用例提供…