2013年5月5日 星期日

AVR makefile using a library

AVR version is 4.0

如果要在Atmel的AVR建立一個Library要做以下的步驟:

1.在makefile裡面新增一行:

##Link
$(TARGET): $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) $(LINKONLYOBJECTS) $(LIBDIRS) $(LIBS) -o $(TARGET)

avr-ar rcs libUART.a UART_App.o
%.hex: $(TARGET)
avr-objcopy -O ihex $(HEX_FLASH_FLAGS)  $< $@ 

這是我擷取下來的,主要在Link後面加上 avr-ar rcs libUART.a UART_App.o   要注意一個地方,
 libUART.a 這個的lib很重要,一定要加lib不然compile不會過,avr-ar rcs libUART.a UART_App.o一定要空格

2.再到Edit Configuration Options->General->Use External Makefile 把自己寫好的makefile include進來

3.在跑一次Rebuild all,就會跑出 libUART.a

4.把自己Build的libUART.C檔移除,只剩下libUART.a

5.再到Edit Configuration Options->libraries->library search path 只到自己建立的 libUART.a路徑

6.Edit Configuration Options->libraries->Available Link Objector-> libUART.a  add Objector 到Link with These Objects->確定

7.再做一次Rebuild All


沒有留言:

張貼留言