我们拥有可以通过 Windows 上的 Code Composer TI 构建并运行的固件。 最大 Im 尝试集成到 WSL 上。 我将工具链从 cl430更改为 msp430-gcc。 Im 中使用 MSP430工具链中的链接器。 这是构建过程中的整个错误:
/usr/lib/gcc/msp430/4.6.3/../../../../msp430/bin/ld:go_two_linux.elf 段`.text'将不适应区域` ROM"
/usr/lib/gcc/msp430/4.6.3/../../../../msp430/bin/ld:加载于[000000000000ffc0000000000000ffdf]的段.vectors 与加载于[0000000000002,100,000000010405]的段.text 重叠
/usr/lib/gcc/msp430/4.6.3/../../../../msp430/bin/ld:区域`ROM"溢出2230字节
/usr/lib/gcc/msp430/4.6.3/libcrt0.a (_copy_data.o):在函数`___ DO_copy_data'中:
/build/gcc-msp430-gRBRRo/gcc-msp430-4.6.3~mspgcc-20120406/./gcc-4.6.3/gcc/config/MSP430/crt0.S:195:重新定位已截断以适合:R_MSP430_16_BYTE、对应于 go_two_linux.elf 中的* abs*段中定义的符号`_data_load_start'
/usr/lib/gcc/msp430/4.6.3/crt0ivtbl16.o:在函数`_ISR_14'中:
(.text+0x2):重定位被截断以拟合:针对/usr/lib/gcc/msp430/4.6.3/libcrt0.a (_unexpect_.o).text.crt0段中定义的符号` unexpect_'的 R_MSP430_16
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_GET_param_data'中:
CMD_handling.c:(.text+0x11e):重定位被截断以拟合:`no symbol'的 R_MSP430_16_byte
lib/libx_lib.a (cmd_handling.c.obj):在函数`Handle_Transaction 中:
CMD_handling.c:(.text+0x5b6):重定位被截断以拟合:R_MSP430_16相对于/usr/msp430/lib/libc.a (memset.o)中.text 段定义的符号`memset'
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_DAC_currents'中:
CMD_handling.c:(.text+0x970):重定位被截断以拟合:R_MSP430_16 `m/usr/msp430/lib/libc.a (memset.o)中.text 段中定义的符号"emset"
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_ADC_currents'中:
CMD_handling.c:(.text+0xbbe):重定位被截断以拟合:R_MSP430_16对/usr/msp430/lib/libc.a (memset.o)中.text 段中定义的符号`memset'进行比较
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_DAC_voltes'中:
CMD_handling.c:(.text+0xdf0):重定位被截断以拟合:R_MSP430_16、对应于/usr/msp430/lib/libc.a (memset.o)中.text 段定义的符号`memset'
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_ADC_voltages'中:
CMD_handling.c:(.text+0xF8):重定位被截断以拟合:R_MSP430_16 (相对于/usr/msp430/lib/libc.a (memset.o)中.text 段定义的符号`memset')
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_VOLTAGES_CURRENTs'中:
CMD_handling.c:(.text+0x1252):重定位被截断以拟合:R_MSP430_16相对于/usr/msp430/lib/libc.a (memset.o)中.text 段定义的符号`memset'
lib/libx_lib.a (cmd_handling.c.obj):在函数`CMD_serial_number'中:
CMD_handling.c:(.text+0x1cc8):重定位被截断以拟合:R_MSP430_16、对应于/usr/msp430/lib/libc.a (memcpy.o)中.text 段中定义的符号`memcpy'
CMD_handling.c:(.text+0x1d1e):输出中省略了其他重定位溢出
lib/libx_lib.a (heater.c.obj):在函数`heater_get_temperates'中:
HEATER.c:(.text+0x36e):对`有限'的引用未定义
collect2:LD 返回1个退出状态
make[2]:***[CMakeFiles/go_two_linux.elf.dir/build.make:98: go_two_linux.elf]错误1
make[1]:***[CMakeFiles/Makefile2:129: CMakeFiles/GO_
我怎么了? 如何正确集成数学库。 MSP430工具链附带数学库、我检查了这些、但是找不到像 islimit 这样的简单函数。 以下是我的编译器/链接器标志: