我一直在尝试使用MSP GCC编译器。我为单个文件编写了一个makefile,并且能够在MSP430器件中编译和闪存。
我不知道如何为彼此依赖的不同文件夹中的许多源文件编写makefile。
我正在开发一个串行派生程序 文件夹和文件结构如下
serial_driver/App
serial_driver/App/inc/app.h
serial_driver/App/inc/app.c
serial_driver/controller
serial_driver/controller/inc/hardware.h
serial_driver/controller/inc/globaldef.h
serial_driver/controller/src/ctrl.c
serial_driver/UART
serial_driver/UART/inc/uart.h
serial_driver/UART/src/uart.c
任何人都可以提出一些想法,为这个项目编写make文件,以及如何在未来更大的项目中进行扩展。
谢谢和问候 Ashok Kumar P
答案 0 :(得分:1)
一个选项是在每个目录中添加makefile,从父makefile中可以使用-C选项调用每个makefile。
例如:
在App
目录中,您可以拥有makefile,也可以使用serial_driver
中的makefile
你可以有一个statememt
make -C ./App
此语句将执行App目录中的makefile
同样,您可以这种方式调用子目录中的所有makefile。
答案 1 :(得分:0)
我使用的是rake
(Ruby make)而不是make
(我讨厌make
,它是如此令人沮丧和调试像垃圾一样)
我有一个示例rake系统here,我的工作区内有小项目。每个项目的Rakefile
引用与项目文件夹相同级别的Rakefile.include
文件,其中发生了所有魔法。如果你想看看它,那就很好了。它是为Launchpad定制的,但可以更改为任何内容。还有一个完整的指南来安装最新版本的mspgcc。
很酷的是你可以做到
rake mcu=msp430g2553
rake install
它将为该特定版本的msp430编译项目中的所有源文件(包括子文件夹和子文件夹等),并将其安装在Launchpad上。 (使用mspdebug
)