我想为Contiki添加一些第三方库,但目前我还不能。 所以我想用一个简单的库进行测试。
我写了两个文件hello.c hello.h,在hello.c中我有:
printf(" Hello everbody, library call\n");
在hello.h中我有:
extern void print_hello();
我使用以下命令创建了hello.o:
msp430-gcc -mmcu=msp430f1611 hello.c -o hello.o
我创建了一个存档文件:
ar -cvq libhello.a hello.o
我转到contiki,我编写了一个调用hello.h来执行函数的简单程序。我尝试在makefile中使用PROJECT LIBRARIES变量包含hello.a,当我编译时我得到这个:
Hello_lib.sky section .vectors' will not fit in region'vectors'
...
region vectors overflowed by 32 Bytes
有人可以解释一下我的问题是什么(我是该领域的新手)?
如果可能的话如何纠正? (我应该为msp430-gcc指定哪些选项) 感谢。
答案 0 :(得分:1)
此视频显示如何将自己的库添加到Contiki OS
https://www.youtube.com/watch?v=csa9D1U5R_8
详细说明:
视频的步骤:
创建文件夹示例:
复制example-broadcast.c
复制Makefile
创建库:
创建目标文件:
msp430-gcc -mmcu=msp430f1611 -c hello.c -o hello.o
创建库文件:
msp430-ar -cvq libhello.a hello.o
告诉Contiki图书馆的路径:
TARGET_LIBFILES += -L. -lhello
将库添加到.c代码中并打印hello消息:
#include "hello.h"
Print_Function();
编译.c代码:
make example-broadcast TARGET=sky