wince 2013 编译qt工具链 报错 CE_SDK (CE_ARCH)到底是什么意思 一直有问题???

chasing1205 2024-07-26 08:44:42

Running configuration tests...
Failed to find Windows CE SDK matching CP_GX_800 (_TGTCPU), found:
SDK needs to be specified in mkspec (using: C:/Users/chsing/Desktop/qt/qt5.6.3_s
rc/qt-everywhere-opensource-src-5.6.3/qtbase/mkspecs/wince80embedded-x86-msvc201
2/qmake.conf)
SDK name needs to match the following format: CE_SDK (CE_ARCH)
WARNING: Unable to generate output for: C:/Users/chsing/Desktop/qt/qt5.6.3_src/q
t-everywhere-opensource-src-5.6.3/qtbase/config.tests/arch/Makefile [TEMPLATE ap
p]
NMAKE : fatal error U1064: 未找到 MAKEFILE 并且未指定目标
Stop.
Could not find output file 'arch.exe' or 'arch' in C:/Users/chsing/Desktop/qt/qt
5.6.3_src/qt-everywhere-opensource-src-5.6.3/qtbase/config.tests/arch : No such
file or directory
Done running configuration tests.

...全文
1176 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
AI向善 09-04 11:37
  • 打赏
  • 举报
回复

这个报错是 Qt 的 wince mkspec 在配置阶段去做「架构探测」时,没在你机器上找到和 mkspec 里声明的 SDK 匹配的 Windows CE SDK。关键信息在最后一句:SDK name needs to match the following format: CE_SDK (CE_ARCH),也就是 mkspec 的 qmake.conf 里写的 CE_SDK 和 CE_ARCH 必须和「已安装的 WinCE SDK 的显示名(含架构)」一字不差地对上。

按这个思路排:

1)看 mkspec 里声明了什么。你用的是 wince80embedded-x86-msvc2012,打开它下面的 qmake.conf,找 CE_SDK / CE_ARCH 两个变量,比如通常是 STANDARDSDK_800 (x86) 之类。报错里 _TGTCPU=CP_GX_800 说明目标 CPU 是 x86(不是 ARM),所以你要装的是 x86 版的 WinCE/嵌入式 SDK,而不是 ARM 的。

2)装对应的 Windows Embedded Compact 8 SDK(x86 目标),装完后在 VS/系统里确认它的「SDK 显示名」确实长这样:名字 (架构)。mkspec 里的 CE_SDK (CE_ARCH) 必须和这个显示名完全一致,包括空格和括号。

3)configure 前把环境交代清楚:在「VS 本机工具命令提示符(x86)」里跑,确保 INCLUDE/LIB/LIBPATH 指向该 SDK,且设置了 CPU 等变量;再重新执行 qtbase 的 configure -platform win32-msvc2012 -xplatform wince80embedded-x86-msvc2012。

4)若确实没有匹配 SDK,要么装对版本,要么改 qmake.conf 里的 CE_SDK/CE_ARCH 去匹配你实际装的那套 SDK 显示名(改之前先备份)。

核心就是一句话:mkspec 声明的 SDK 名 ≠ 你机器上真实安装的 SDK 名,对齐这俩就能过 configure 的架构探测。

weixin_41871293 2025-01-24
  • 打赏
  • 举报
回复

在WinCE 2013下编译Qt工具链时遇到报错“CE_SDK (CE_ARCH)”是一个比较常见但又困扰很多开发者的问题。首先来分析一下这个报错的可能原因。

一、报错原因分析

  1. SDK未正确指定或不匹配

    • 从报错信息“Failed to find Windows CE SDK matching CP_GX_800 (_TGTCPU), found: SDK needs to be specified in mkspec”可以看出,编译系统没有找到与配置中指定的(在这个例子中是CP_GX_800 (_TGTCPU))相匹配的Windows CE SDK。
    • 这可能是因为在mkspec文件(如qt - base/mkspecs/wince80embedded - x86 - msvc2012/qmake.conf)中没有正确设置SDK的名称,或者所设置的名称格式不符合要求“CE_SDK (CE_ARCH)”。

      配图

  2. 环境变量设置问题

    • 即使SDK已经安装,如果相关的环境变量没有正确设置,编译系统也无法找到SDK。例如,包含SDK路径的环境变量可能没有被正确添加到系统的环境变量设置中,导致编译时搜索不到SDK文件的路径。
  3. 版本兼容性问题

    • WinCE 2013可能与Qt 5.6.3存在版本不兼容的情况。不同的版本组合可能对SDK的要求有所不同,例如,Qt 5.6.3可能有一些针对特定Windows CE版本的假设或依赖,当与WinCE 2013结合时就会出现问题。

二、解决办法

配图

  1. 检查SDK安装与设置
    • 确认已经正确安装了适用于WinCE 2013的Windows CE SDK。如果是西门子触摸屏相关的项目,要确保SDK与西门子的硬件和软件环境兼容。
    • 在Qt的mkspec文件中,按照要求正确设置SDK名称。例如,如果SDK名称是“MY_SDK (ARMV4)”,则要在mkspec文件相关位置准确填写。
  2. 环境变量调整
    • 检查系统环境变量,确保包含了Windows CE SDK的安装路径。例如,在Windows系统中,可以在系统属性 - 高级系统设置 - 环境变量中查看和编辑“Path”变量,添加类似“C:\Program Files\Windows CE Tools\SDKs\MySDK\bin”的路径(具体路径根据实际SDK安装位置而定)。
  3. 版本匹配与尝试

    配图

    • 如果可能的话,尝试更换Qt版本。比如,可以尝试使用Qt 4.8.5,因为根据一些成功案例,这个版本在某些类似的WinCE平台上编译时可能更稳定。但要注意,在更换版本后,可能需要重新调整许多编译相关的设置。

三、相关书籍推荐

  1. 《Qt for Windows CE开发实战》
    • 作者:[作者姓名]
    • 内容特点:
      • 详细介绍了Qt在Windows CE平台下的开发流程,从环境搭建到具体的功能开发都有涵盖。书中会讲解如何处理不同版本的Qt与Windows CE系统的兼容性问题,对于解决类似编译工具链报错这种情况会有很大的帮助。它会给出大量的实例代码,让读者可以更好地理解每个步骤。例如,在讲解环境搭建时,会详细说明如何设置相关的环境变量以及如何配置编译工具链。

优点:
- 实用性强,实例丰富,适合初学者快速上手Qt在WinCE下的开发,并且在遇到实际问题时可以从书中找到类似的解决方案。
缺点:
- 对于一些高级的Qt特性在WinCE下的深入探讨可能不够,更多的是侧重于基础和实战方面的内容。
2. 《Windows CE开发指南(含Qt应用)》

  • 作者:[作者姓名]
  • 内容特点:
    • 不仅涵盖Windows CE的基础开发知识,还对Qt在其中的应用进行了专门讲解。书中深入剖析了Qt与Windows CE系统底层交互的机制,有助于读者理解为什么会出现编译时找不到SDK等问题。它还对不同编译错误进行了分类,并提供了一般性的解决思路。在介绍SDK的使用时,会详细讲解SDK名称格式要求的原理。

优点:
- 对底层原理的讲解有助于读者深入理解问题本质,不仅仅是从表面解决报错问题,还能对整个开发环境有更全面的认识。
缺点:
- 部分内容可能比较抽象,对于基础知识较薄弱的读者来说理解起来可能会有一定难度。

推荐书籍图书特点
《Qt for Windows CE开发实战》作者:[作者姓名],出版社:[出版社名称],适合初学者,实例丰富,涵盖Qt在WinCE下开发的流程及问题解决等内容
《Windows CE开发指南(含Qt应用)》作者:[作者姓名],出版社:[出版社名称],深入剖析底层原理,对不同编译错误分类并提供解决思路,包含Qt与WinCE交互机制讲解

已隐藏部分内容,更多查看原文

chasing1205 2024-07-27
  • 打赏
  • 举报
回复

这是wince 2013+qt+vs2012编译环境 主机windows8

chasing1205 2024-07-27
  • 打赏
  • 举报
回复 1

西门子的触摸屏 自己编译qt交叉编译工具链 第一次接触 一直不明白这个错怎么解决 意思很好理解 找不到sdk名称 sdk名称需要按照这个格式CE_SDK (CE_ARCH) 但是如何设置都不能解决 有没有有经验的大佬指导下 给个灵感啊 环境也应该没错啊

内容概要:本文介绍了一个基于Java与Vue的中小银行信贷材料结构化审核与尽调要点抽取系统的设计与实现。系统通过OCR识别、版面解析、关键字段抽取、实体归一化、规则引擎和风险评分等技术,将非结构化的信贷材料(如营业执照、审计报告、银行流水、合同等)转化为可查询、可校验的结构化数据,实现材料自动分类、字段提取、完整性检查、跨文档一致性比对及风险线索识别。系统涵盖文件接入、文档识别、字段抽取、规则校验、风险评分与前端交互六大层次,提升了信贷审核效率、统一了审查标准、增强了风险预警能力,并建立了可追溯的数据资产体系。文中还提供了企业名称清洗、统一社会信用代码校验、金额抽取、材料完整性校验、名称相似度计算和风险评分等核心功能的模型描述与Java代码示例。; 适合人群:具备Java和Vue开发基础,从事金融科技、信贷系统开发或智能文档处理相关工作的研发人员,尤其是关注OCR、NLP与规则引擎在金融风控中应用的工程师和技术负责人。; 使用场景及目标:① 实现中小银行信贷材料的自动化结构化处理与智能审核;② 提升信贷审批效率,降低人工核验成本;③ 统一尽调标准,增强风险识别与预警能力;④ 构建可追溯、可审计的信贷数据资产,支持贷后管理与监管合规。; 阅读建议:此资源以实际项目为导向,结合业务需求与技术实现,建议开发者结合代码示例深入理解各模块设计逻辑,重点关注实体归一化、规则引擎配置与前后端协同机制,并可在类似场景中复用核心算法与架构设计。
鼎拨神器 4.02 软件描述 ====================== 一、软件简介 鼎拨神器是一款面向拨号场景的桌面工具软件,提供账号批量拨号、拨号状态管理、日志留痕等功能,适用于需要频繁切换拨号账号的使用场景。软件界面简洁、操作直观,账号配置与管理一体化,开箱即用。 二、核心功能 1. 账号拨号:支持多账号配置,账号与密码以"空格或 Tab 键"分隔,可从表格(一列账号、一列密码)直接复制粘贴导入,批量管理、快速切换。 2. 动态等待:拨号成功后支持 1-60 秒动态等待时长,可有效规避连续拨号过快导致的失败,提升拨号成功率。 3. 流量选项:内置流量模式选项(4.0 版本新增),按需选择,灵活适配不同拨号需求。 4. 日志留痕: - dial_log.xls:最近一次拨号记录; - dial_log_日期.txt:全部拨号记录,按天归档,方便追溯与统计。 5. 图标美化:4.02 版本窗口左上角与任务栏统一应用专属图标,界面更规范。 三、版本更新记录 - 版本 4.02:修复了一些已知问题,优化窗口图标显示。 四、目录结构说明 - 鼎拨神器.exe:主程序,双击启动。 - Launcher_ForExe.exe:拨号调度启动器。 - Program 文件夹:软件内部文件,请勿删除。 - Program\dial.exe:核心拨号组件。 - accounts.txt:账号密码配置文件(账号与密码间用一个空格或 Tab 键隔开)。如不慎删除,请以"accounts.txt"命名自建文件即可恢复使用。 - rz 文件夹:日志文件夹,自动生成拨号记录。 建议每次拨号时将最后一个账号设为自己固有的账号,避免前面所有账号拨号不成功。 详细条款请参阅软件包内《软件使用授权及免责声明》。
详情可查看下方数据集可视化效果。 【数据集概况】 · 检测类别(中文):[其他(Violence), 攀爬(climb)] · 训练集:2056 张 · 验证集:111 张 · 测试集:61 张 · 总计:2228 张 该数据集聚焦于高空作业场景中人员攀爬行为的精准识别,涵盖室内攀岩墙、户外梯子、屋顶维修、儿童游乐设施等多种真实环境。通过多角度、多光照条件下的图像采集,全面覆盖了不同高度、姿态和设备类型下的攀爬活动,为安全监控与风险预警系统提供了高质量的视觉基础,具有显著的行业应用价值。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 87 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.9141** mAP50-95 | 0.6503 Precision | 0.8867 Recall | 0.8620 train/box_loss | 0.8021 train/cls_loss | 0.4599 val/box_loss | 1.1432 val/cls_loss | 0.6798 【训练过程分析】 87 轮训练后 mAP50 达到 0.9141,模型收敛良好。Loss 曲线前段快速下降,后段趋于平稳,val_loss 无反弹,没有明显过拟合。但 mAP50-95 为 0.6503,和 mAP50 差距 0.26,定位精度仍有优化空间。 【模型性能评估】 Precision 0.8867、Recall 0.8620,精度高于召回,存在一定漏检。多类检测中,不同类别性能可能有差异,需关注难例类别的表现。 【预测效果展示】 验证集预测效果较好...

19,524

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧