relocation truncated to fit一般是什么问题引起的

make -j8 all 

./User/Usb.o: in function `UsbSegDescriptor':

L:\PRJ_WCH32\CH32V103x8UsbHidIap\obj/../User/Usb.c:55:(.text.UsbSegDescriptor+0xa): relocation truncated to fit: R_RISCV_RVC_LUI against symbol `DevDescr' defined in .rodata.DevDescr section in ./User/Descriptor.o

collect2.exe: error: ld returned 1 exit status

就是在程序里面读了一个表地址

您好,关于该问题的解决,可在下图中圈出位置加上-mno-relax应该就可以了。image.png


谢谢,沁恒的技术支持太到位了i_f48.gif


只有登录才能回复,可以选择微信账号登录