解决Qt报错:Android deploy settings file not found, not building an APK.

本文介绍了一个Qt在安卓配置上的小Bug,通过简单的步骤即可修复:先禁用再激活编译工具,重新加载项目即可解决问题。

这是Qt的一个小Bug,安卓配置文件不太稳定。
只需要在左侧项目栏里:
选定你的编译工具,右侧选择Disable它,
然后双击激活它,重新载入一下,就OK了。

有同学表示找不到,我给截个图
在这里插入图片描述

如果有帮助请点个赞谢谢

<think>好的,我需要帮助用户解决执行bash deploy.sh时出现的“cannot execute binary file”和“required file not found”的问题。首先,我要回忆一下系统级指令中的引用内容,看看是否有相关的解决方法。 用户提到的错误信息是“cannot execute binary file”,引用[1]指出这个问题通常由几种情况引起,比如文件权限问题、架构不匹配或者文件损坏。同时引用[5]提到权限问题可能是账户权限或文件夹权限的问题,还有在Docker中ADD或COPY命令可能出现的bug。另外,引用[4]提到如果手动创建了.ssh目录,可能需要调整权限为700,这说明权限设置的重要性。 接下来,用户还遇到了“required file not found”,这可能意味着脚本本身或脚本中引用的文件不存在,或者路径不正确。需要检查文件是否存在,路径是否正确,以及是否有执行权限。 现在,我需要分步骤来分析和解决这两个错误: 第一步,检查文件是否存在。用户运行的是bash deploy.sh,所以首先要确认deploy.sh是否存在于当前目录,并且路径正确。如果不在当前目录,可能需要使用绝对路径或相对路径正确指定。 第二步,检查文件权限。如果文件没有执行权限,使用chmod +x deploy.sh添加执行权限。如果权限设置不正确,即使添加了执行权限,也可能因为父目录权限问题导致无法执行。例如,引用[4]中提到,.ssh目录需要700权限,类似地,可能需要检查deploy.sh所在目录的权限是否适当。 第三步,检查架构兼容性。如果deploy.sh是二进制文件而不是脚本,那么可能是架构不匹配。比如在x86系统上运行ARM编译的二进制文件,或者32位与64位不兼容。不过用户使用的是bash命令,说明deploy.sh应该是shell脚本,所以可能不存在架构问题。但如果脚本中调用了其他二进制文件,那些文件可能存在架构问题,需要检查。 第四步,检查脚本内容。使用cat deploy.sh查看脚本内容,确认是否有语法错误,或者引用了不存在的文件。例如,脚本中的路径是否正确,是否有拼写错误,或者依赖的文件是否缺失。这时候“required file not found”可能是脚本内部命令导致的,比如某个命令需要的文件不存在。 第五步,检查文件格式。使用file deploy.sh查看文件类型,确保是文本文件而不是二进制文件。如果脚本是从Windows系统复制过来的,可能有换行符问题,导致/bin/bash无法识别,这时候可以用dos2unix工具转换。 第六步,检查依赖项。脚本可能依赖其他命令或工具,比如curl、wget、docker等,需要确认这些是否已安装,并且路径正确。如果有依赖文件,比如配置文件或数据文件,需要确认它们存在且路径正确。 第七步,检查错误信息的具体位置。如果错误发生在执行脚本的某个命令时,而不是脚本本身,可能需要逐步调试脚本,使用bash -x deploy.sh来查看执行过程,找出具体哪一行报错。 现在需要将这些步骤整理成用户容易理解的解决方案,并引用相关的引用内容作为支持。例如,权限问题对应引用[1]和[5],路径问题对应引用[4]中的目录权限处理。同时,可能还要考虑文件是否损坏,建议重新下载或复制脚本。 最后,生成相关问题,帮助用户进一步排查可能的问题,比如如何调试脚本、如何检查文件权限、如何处理架构不兼容等。</think>### 分步解决方案 #### 1. **确认文件存在性与路径正确性** - 使用`ls -l deploy.sh`检查当前目录是否存在该文件。若文件不存在,需确认脚本路径是否正确,或重新下载/复制文件。 - 如果脚本路径包含空格或特殊字符,尝试用引号包裹路径:`bash "./deploy.sh"`。 #### 2. **检查文件权限** - 若文件无执行权限,运行以下命令添加权限: ```bash chmod +x deploy.sh ``` - 检查脚本所在目录的权限(例如目录需有`rx`权限): ```bash chmod 755 /path/to/script_directory ``` [^1][^4][^5] #### 3. **验证文件类型与格式** - 使用`file deploy.sh`确认文件类型。若显示`Bourne-Again shell script`则为正常。 - 若文件来自Windows系统,可能包含`CRLF`换行符,需转换为Unix格式: ```bash dos2unix deploy.sh ``` #### 4. **检查脚本内容与依赖** - 使用文本编辑器或`cat deploy.sh`查看脚本内容,确认: - 首行为`#!/bin/bash`(Shebang声明)。 - 所有引用的文件路径正确(如配置文件、数据文件)。 - 无语法错误(如缺少引号、括号)。 - 若脚本调用其他二进制文件(如`docker`),确认其存在且可执行: ```bash which docker # 检查命令是否存在 ``` #### 5. **调试脚本执行过程** - 添加`-x`参数跟踪执行流程,定位报错位置: ```bash bash -x deploy.sh ``` - 若报错指向某一行,检查该行命令的依赖文件或权限。 #### 6. **处理架构兼容性问题(罕见但需排查)** - 若脚本调用了编译后的二进制文件,使用`file /path/to/binary`确认其架构(如`x86_64`)与当前系统匹配。 --- ### 常见错误场景与解决 - **场景1**:`bash: ./deploy.sh: Permission denied` **解决**:执行`chmod +x deploy.sh`。 - **场景2**:`No such file or directory` **解决**:检查脚本中引用的文件路径是否绝对/相对路径正确。 - **场景3**:脚本中命令未找到(如`docker: command not found`) **解决**:安装缺失的依赖或添加环境变量。 ---
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值