You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

QtCreator自定义构建项目部署:如何添加待部署文件?

解决Qt Creator自定义构建系统下嵌入式Linux部署文件为空的问题

针对你用Qt Creator 4.6.0自定义构建系统交叉编译嵌入式Linux项目,部署时「Files to deploy」列表为空的问题,我给你几个实用的解决方案:

方法一:手动添加SFTP部署文件(最直接)

既然你已经选了「Upload files via SFTP」作为部署方式,其实可以手动指定要上传的文件,步骤如下:

  1. 打开项目的Run Settings(运行设置)页面,定位到「Deployment」区域。
  2. 找到「Files to deploy」列表旁的Add按钮(通常是个加号图标),点击后弹出配置对话框:
    • 在「Local file path」中选择你本地构建生成的可执行文件(比如你提到的build/test)
    • 在「Remote directory」中填写嵌入式设备上的目标路径(比如/home/root)
  3. 如果还有依赖库、配置文件等需要部署,重复步骤2逐个添加即可。

方法二:使用自定义部署步骤(适合批量/复杂部署)

如果需要部署多个文件,或者要执行额外的部署操作(比如设置可执行权限、重启服务),可以添加自定义部署步骤:

  1. 在「Run Settings」的「Deployment」区域,点击Add Deploy Step,选择「Custom Process Step」。
  2. 配置自定义步骤的参数:
    • Command:可以用scp或者sftp命令,比如用scp上传单个文件:scp build/test root@你的设备IP:/home/root
    • 如果要批量上传,也可以写个简单的脚本作为命令,比如:
      sftp root@你的设备IP << EOF
      put build/test /home/root
      put build/libcustom.so /home/root/lib
      EOF
      
    • 建议提前配置SSH免密登录,避免每次部署都输入密码。

方法三:让IDE自动识别构建输出(从根源解决)

Qt Creator的自定义构建系统支持标记构建输出文件,这样IDE可能会自动把这些文件加入部署列表:

  1. 打开项目的Build Settings(构建设置)页面,找到你的「Custom Process Step」。
  2. 切换到「Outputs」标签页,点击Add按钮:
    • 输入本地构建生成的可执行文件路径(比如build/test)
    • 将「Type」设置为「Executable」
  3. 保存设置后回到「Run Settings」的部署区域,检查「Files to deploy」列表是否自动填充了该文件。

为什么你之前的方法没用?

  • qmake的INSTALLS变量:仅适用于qmake项目,自定义构建系统不会读取.pro文件,所以这个方法无效。
  • QtCreatorDeployment.txt:这个文件是CMake项目专用的,自定义构建系统不会解析它,自然不会生效。

额外注意事项

  • 先手动测试SFTP/SSH连接是否正常(比如在终端执行sftp root@你的设备IP),确保设备能正常访问。
  • 如果部署后可执行文件没有权限运行,可以在自定义部署步骤中添加一条命令:ssh root@你的设备IP chmod +x /home/root/test。

内容的提问来源于stack exchange,提问作者Jetski S-type

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:15:19