命令行编译 arduino 项目-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12092|回复: 7

命令行编译 arduino 项目

[复制链接]
发表于 2013-7-2 06:52 | 显示全部楼层 |阅读模式
本帖最后由 小浩 于 2013-10-28 22:08 编辑

====== 命令行编译 arduino 项目 ======

由于 arduino 的编辑器本身真的不是很好用。于是就想要用习惯的编辑器来编辑,然后再进行编译。
很自然地想到了命令行编译。这样就可以用自己喜欢的编辑器编辑代码,然后命令行编译(对应到 arduino 上面的 verify),下载/上传(对应到 arduino 上面的 upload)。而且还可以把编译命令绑定到编辑器上调用

于是上网搜索,得到下面的方法。这是在 1.5 beta 版本[1]中新加入的功能。
用上一次的配置(板子,串口)编译并上传 :
  • arduino --upload /path/to/sketch/sketch.ino

和 playground 上的种方式不一样[3], 它是会弹出 IDE 窗口来完成相应操作。你会看IDE 窗口闪一下就没有了。
不过如果你不带选项和参数就会打开平常一样打开 arduino IDE,
新建一个添加好 setup 和 loop的 arduino 空程序程序。
  • arduino 这里什么也不输或者你随便输入点不是命令也不是选项的东西

[注意] 路径有个 bug 直接传入相对路径不能起作用,必须传绝对路径才行[2]。
比如当前目录[5]下有一个叫 Verdana]sketch.ino
  • 你在 linux 上可以这样
  • arduino --upload `pwd`/sketch.ino 已经解决
  • 或者你在 windows 上
  • arduino --upload %cd%/sketch.ino


更多命令及选项的使用可以参考
github 维基页面
arduino ide 1.5 从命令行调用 (中文,某人乱翻的)


=====注释=====
[1] 1.5 beta 下载 http://arduino.cc/en/Main/Software
[2] 已经给官方提了路径的 bug
[3] 官方 playground 上的纯命令行编译方式,不会弹出 IDE 用 make 编译调用 gcc-avr 及 avr-dude 工具,目测是针对 linux 的很高兴, 不过我还没有玩会。
[5] 快速打开命令行小工具
发表于 2013-7-2 11:35 | 显示全部楼层
装逼利器
发表于 2013-7-2 20:04 | 显示全部楼层
arduino不是直接用GCC编译么?
 楼主| 发表于 2013-7-2 20:21 | 显示全部楼层
CY57 发表于 2013-7-2 20:04
arduino不是直接用GCC编译么?

arduino ide 用的工具内建,没落调用外部的工具。
官方的 playground 上那就是用 make 的 调用 gcc-avr ( gcc 针对 avr 交叉编译版本)编译的样。
具体的就像上面说那样了,因为还没有理解清楚 arduino 的编译过程所以还没有玩会,会了再分享。
 楼主| 发表于 2013-7-2 20:23 | 显示全部楼层
奈何col 发表于 2013-7-2 11:35
装逼利器

用 linux 装逼人士如虎添翼。
发表于 2013-7-21 22:50 | 显示全部楼层
LZ用的什么编辑器?是vim吗?
 楼主| 发表于 2013-7-22 11:04 | 显示全部楼层
摇滚诗 发表于 2013-7-21 22:50
LZ用的什么编辑器?是vim吗?

是的, vim。
网上也有 arduino 语法高亮文件哦,下载配置后,加上前面这招
基本上就可以完全抛弃 arduino IDE 了。

另外 vim 上还有插件,可以配置直接在 vim 中调用编译上传,
这个等过两天空了再整。

另外有那个 路径的 bug 官方有人回复了,说和 arduino 的实现机制相关,
听起不不容易改。你有愿意的话可以看看。
发表于 2013-7-22 12:36 | 显示全部楼层
小浩 发表于 2013-7-22 11:04
是的, vim。
网上也有 arduino 语法高亮文件哦,下载配置后,加上前面这招
基本上就可以完全抛弃 arduin ...

嗯。。我是用vim+arduino插件的 然后编译上传的时候提示找不到串口什么的。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-29 07:07 , Processed in 0.078329 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表