首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在eclipse中通过stm32脚本定义编译器符号(stm32工作台)

在eclipse中通过stm32脚本定义编译器符号(stm32工作台)
EN

Stack Overflow用户
提问于 2017-04-05 12:03:28
回答 1查看 485关注 0票数 2

由于时间较长,我为stm32f4处理器编写嵌入式系统软件。

直到现在,我使用自己的工具链和自己的makefile来构建二进制文件。为了具有IDE的优势,我决定将项目集成到Eclipse (stm32工作台: stm32控制器的eclipse )中。为了停止拥有自己的工具链,我现在使用集成的AC6工具链。

我要做的大部分事情都很好。

我的问题

在我自己的makefile中,我有以下条目:

代码语言:javascript
复制
SVNREPREV := $(shell ./svnversion.sh ./inc/ ./Drivers/ ./libs/ ./linkerscripts/ ./makefsdata/ ./src/)
XCFLAGS += -DSVNREPOVERSION=\"$(SVNREPREV)\"

(外壳脚本返回一个类似于-> 1234:1234M的值,它将被转换为字符串)

我可以在我的c代码中使用这个值,如下所示:

代码语言:javascript
复制
const char svnRepoRevision[] = SVNREPOVERSION;

我的问题

如何使用AC6工具链在Eclipse/stm32 32工作台中实现类似的行为并创建makefile?

我的尝试

添加项目->属性下的符号-> C/C++生成->设置->生成步骤->符号

代码语言:javascript
复制
SVNREPREV=$(shell ../svnversion.sh ../inc/ ../Drivers/ ../libs/ ../linkerscripts/ ../makefsdata/ ../src/)
SVNREPOVERSION="SVNREPREV"

生成以以下错误结束:

代码语言:javascript
复制
arm-none-eabi-gcc: error: ../src/): No such file or directory

我试过不同版本的“设置”,但没有效果,每次都收到错误。

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-05 14:21:04

手册

链接到使用的文档:这里

感谢松开向我展示了这个链接

Solution/Answer

  1. 在项目根文件夹中创建空makefile.defs文件

右击投影仪文件夹->新->文件

  1. 在makefile.defs中编写svn修改所需的命令

SVNREV:='"$(shell ../svnversion.sh ../inc/ ../src/)"'

  1. 打开c/c++生成设置、符号

项目->属性-> C/C++构建->设置->构建步骤->单片机GCC编译器->符号

  1. 添加代码中使用的符号

增值SVNREPOVERSION="$(SVNREV)“作为符号

  1. 保存项目设置并生成

构建现在运行良好,我收到了我的svn修订号。makefile.defs只执行一次。这将从使用的文件夹中读取所需的used修订。此值将被写入SVNREPOVERSION,我在代码中使用该值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43230656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档