gpt4 book ai didi

c - 将我自己的库添加到 Contiki OS

转载 作者:太空狗 更新时间:2023-10-29 15:05:39 26 4
gpt4 key购买 nike

我想向 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 指定什么选项)谢谢。

最佳答案

确保您构建库的架构与构建程序的架构相同。

例如,如果您想为 sky 微尘(MSP430F1611 MCU)构建可执行文件,请使用以下内容构建库:

msp430-gcc -mmcu=msp430f1611 -c hello.c -o hello.o
msp430-ar -cvq libhello.a hello.o

然后将库的路径及其名称添加到应用程序的 Makefile 中:

TARGET_LIBFILES += -L./hellolib -lhello

然后照常构建应用程序:

make TARGET=sky

关于c - 将我自己的库添加到 Contiki OS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29971717/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com