0
我正在使用这个code我在github上找到了。 为了使用uspi库,帮助文档(USING SECTION)说我应该创建一个makefile并在那里指定includes和libraries文件。 因为我是新来的Makefile的概念,我第一次尝试这样做手工键入:arm gcc linker undefined reference
arm-linux-gnueabihf-gcc -O0 -DRPI2 -mfpu=neon-vfpv4 -mfloat-abi=hard -march=armv7-a -mtune=cortex-a7 -std=c99 -I./uspi/env/include -I./uspi/include -L./uspi/lib -luspi w.o -o kernel.elf
这样的错误出现:
w.o: In function `main':
w.c:(.text+0xc): undefined reference to `USPiEnvInitialize'
w.c:(.text+0x24): undefined reference to `USPiInitialize'
w.c:(.text+0x48): undefined reference to `LogWrite'
w.c:(.text+0x4c): undefined reference to `USPiEnvClose'
w.c:(.text+0x58): undefined reference to `USPiMassStorageDeviceAvailable'
w.c:(.text+0x80): undefined reference to `LogWrite'
w.c:(.text+0x84): undefined reference to `USPiEnvClose'
w.c:(.text+0xb8): undefined reference to `USPiMassStorageDeviceRead'
w.c:(.text+0xdc): undefined reference to `LogWrite'
w.c:(.text+0x108): undefined reference to `LogWrite'
w.c:(.text+0x124): undefined reference to `LogWrite'
w.c:(.text+0x13c): undefined reference to `LogWrite'
w.c:(.text+0x204): undefined reference to `LogWrite'
w.c:(.text+0x23c): undefined reference to `USPiEnvClose'
collect2: error: ld returned 1 exit status
我需要的.elf文件,这样我就可以产生。 IMG文件从它
如果你在'w.o'之后加上'-luspi'? (请注意,您需要自己实现在uspios.h中声明的函数,例如LogWrite) – nos
没有运气我的朋友,同样的错误 – sami
我不相信你。如果您仍然对未定义的参考USPiEnvClose,有些事情是错误的,我们没有任何有关信息。库本身是否正确构建,(你会得到一个未定义的引用LogWrite(),直到你实现它) – nos