在Modelsim .do文件中, 我试过了:
vcom file1.vhd file2.vhd
工作正常。
但是当我尝试时:
set comp_files "file1.vhd file2.vhd"
vcom $comp_files
它没有用,我收到了一个错误:
错误:(vcom-7)无法在读取模式下打开设计单元文件“file1.vhd file2.vhd”。
任何人都知道如何使comp_files工作?
答案 0 :(得分:3)
您必须使用comp_files
(Tcl 8.5)将列表{*}
扩展为单个参数:
set comp_files "file1.vhd file2.vhd"
vcom {*}$comp_files
或者,您可以使用旧版eval
(也应该使用Tcl版本< 8.5):
set comp_files "file1.vhd file2.vhd"
eval vcom $comp_files
答案 1 :(得分:1)
所以:set comp_files "file1.vhd file2.vhd"
会创建一个列表。
尝试llength $comp_files
它将返回“2”=两个元素。
因此,您可以为列表中的每个文件调用vcom
foreach comp_file $comp_files { vcom $comp_file }