在示例之间复制文件时出现IAR Workbench错误[Li005]

在示例之间复制文件时出现IAR Workbench错误[Li005],c,linker,embedded,cypress,iar,C,Linker,Embedded,Cypress,Iar,我有以下错误: 错误[Li005]:没有“Mfs\U Uart\U Init”的定义[参考C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO&ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single\u irq\u sw\TCFLASH 调试\Obj\main.o] 错误[Li005]:没有“Mfs\u Uart\u写入”的定义[引用自C:\Users\rcorde

我有以下错误:

错误[Li005]:没有“Mfs\U Uart\U Init”的定义[参考C:\Users\rcorder1\Documents\IAR Embedded
Workbench\GPIO&ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single\u irq\u sw\TCFLASH
调试\Obj\main.o]

错误[Li005]:没有“Mfs\u Uart\u写入”的定义[引用自C:\Users\rcorder1\Documents\IAR Embedded
Workbench\GPIO&ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single\u irq\u sw\TCFLASH
调试\Obj\main.o]

错误[Li005]:没有“Mfs\U Uart\U Read”的定义[引用自C:\Users\rcorder1\Documents\IAR Embedded
Workbench\GPIO&ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single\u irq\u sw\TCFLASH
调试\Obj\main.o]

我正在尝试“合并/组合”Cypress s6j3200的ADC和UART示例

使用Windows 10,IAR Arm 8.50.1

生成日志:


Building configuration: single_irq_sw - TCFLASH Debug

Updating build tree...


Linking
ilinkarm.exe C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\
S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\adc12b.o C:\Users\rcorder1\Documents\IAR 
Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\
TCFLASH Debug\Obj\exceptions.o C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\
8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\flash_marker.o C:\
Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\
examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\interrupts.o C:\Users\rcorder1\Documents\IAR Embedded 
Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH
Debug\Obj\main.o C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\
s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\mfs_uart.o C:\Users\rcorder1\
Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\
single_irq_sw\TCFLASH Debug\Obj\pdl.o C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\
arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\port.o C:\Users\
rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\
adc12b\single_irq_sw\TCFLASH Debug\Obj\start.o C:\Users\rcorder1\Documents\IAR Embedded Workbench\
GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\
startup.o C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\
S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH Debug\Obj\sysctrl.o C:\Users\rcorder1\Documents\IAR 
Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\
TCFLASH Debug\Obj\Traveo_template_version.o --no_out_extension -o C:\Users\rcorder1\Documents\IAR 
Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\
TCFLASH Debug\Exe\single_irq_sw.out --redirect _Printf=_PrintfFullNoMb
--redirect _Scanf=_ScanfFullNoMb --map 
C:\Users\rcorder1\Documents\IAR Embedded Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\
examples\adc12b\single_irq_sw\TCFLASH Debug\List\single_irq_sw.map
--config C:\Program Files (x86)\IAR 
Systems\Embedded Workbench 8.4\arm\config\linker\Cypress\s6j33xDx.icf
--semihosting --entry 

__iar_program_start --vfe --text_out locale


   IAR ELF Linker V8.50.1.245/W32 for ARM

   Copyright 2007-2020 IAR Systems AB.

Error[Li005]: no definition for "Mfs_Uart_Init" [referenced from C:\Users\rcorder1\Documents\IAR Embedded 
Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH
Debug\Obj\main.o]

Error[Li005]: no definition for "Mfs_Uart_Write" [referenced from C:\Users\rcorder1\Documents\IAR Embedded 
Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH
Debug\Obj\main.o]

Error[Li005]: no definition for "Mfs_Uart_Read" [referenced from C:\Users\rcorder1\Documents\IAR Embedded 
Workbench\GPIO & ADC\arm\8.50.1\Cypress\s6j3200\S6J3260Evl\examples\adc12b\single_irq_sw\TCFLASH
Debug\Obj\main.o]


  8'058 bytes of readonly  code memory
  1'214 bytes of readonly  data memory
  3'390 bytes of readwrite data memory


Errors: 3
Warnings: none


Link time:   0.08 (CPU)   0.06 (elapsed)
Error while running Linker


Total number of errors: 3
Total number of warnings: 0


Build failed.

我找到的解决方案是检查pdl_user.h文件,并确保它具有以下内容:

#define PDL_PERIPHERAL_ENABLE_ADC12B  PDL_ON
#define PDL_PERIPHERAL_ENABLE_SYSCTRL PDL_ON
#define PDL_PERIPHERAL_ENABLE_UART0   PDL_ON
#define PDL_PERIPHERAL_ENABLE_PORT    PDL_ON

询问IAR或Cypress支持。这是一个链接器错误-您未能将目标代码链接到包含
Mfs\u Uart\u Init
的库。可能您尚未将源添加到项目中。很少有人会冒险下载你的zip档案。这些信息必须包含在问题中。从干净的生成或重新生成的所有生成中复制并粘贴生成日志文本可能足以识别问题。它将显示正在编译和链接的所有内容,从而显示缺少的内容。谢谢,我将更新问题并尝试您所需要的suggest@RobertoCordero对不起,我的评论应该读“…目标代码*或*库…”@Clifford问题已编辑,包含构建可能性3号,那么?我建议你应该接受你自己的答案。