问题描述:
我在一个自定义平台上运行我的项目,而我的目标平台的Vivado项目在Vivado合成中使用了以下额外选项。
-verilog_define "DDR_DAC=1" -verilog_define "DDR_ADC=1" -verilog_define "MTS=1"
当我运行Vitis链接器时,我看到以下错误:
ERROR: caught error: extra characters after close-quote
while executing
"set_property -name "steps.synth_design.args.more options" -value "-verilog_define "DDR_DAC=1" -verilog_define "DDR_ADC=1" -verilog_define "MTS=1" -obj..."
(file ".local/hw_platform/prj/rebuild.tcl" line 517)
查看rebuild.tcl文件,我看到以下内容:
set_property -name "steps.synth_design.args.more options" -value "-verilog_define "DDR_DAC=1" -verilog_define "DDR_ADC=1" -verilog_define "MTS=1" -objects $obj
导致错误和缺少最后引号的那一行是由Vitis自动生成的。
解决方法
不要使用引号来定义Vitis流程的选项,请使用方括号:
-verilog_define {DDR_DAC=1} -verilog_define {DDR_ADC=1} -verilog_define {MTS=1}