问题启动程序(VCOM)与TCL多个参数(Problem starting program (vco

2019-09-26 02:43发布

我试图从额外的选项TCL脚本启动程序(VCOM):

set compilationArgs "-quiet -93"
vcom $compilationArgs -work work polar2rect/sc_corproc.vhd

但是,当我跑,我得到以下错误信息:

# Model Technology ModelSim ALTERA vcom 6.5e Compiler 2010.02 Feb 27 2010
# ** Error: (vcom-1902) Option "-quiet -93" is either unknown, requires an argument, or was given with a bad argument.
# Use the -help option for complete vcom usage.
# /opt/altera/10.0/modelsim_ase/linuxaloem/vcom failed.

TCL似乎传递两个额外的选项(-quiet)和(-93)作为一个选项VCOM。 如果我只用它的工作原理这两个选项之一。 如果我跑(VCOM -93 -quiet -work工作polar2rect / sc_corproc.vhd)它也适用。

我怎样才能解决这个问题?

谢谢,亨德里克。

Answer 1:

“问题”是TCL的小心有关管理空间。 如果你有论据与空间(如在Windows机器上许多全名),但有时会令人沮丧,如果你想在列表中会自动分解,这是非常有用的。 解决方法是指示Tcl的,这您要拆分成多个字的东西。

最好的答案至少需要Tcl的8.5(找出你与有什么版本的info tclversioninfo patchlevel ,或者package require Tcl )。

vcom {*}$compilationArgs -work work polar2rect/sc_corproc.vhd

如果你对一个旧版本的Tcl的内置,你需要这个:

eval vcom $compilationArgs -work work polar2rect/sc_corproc.vhd

(或者这,是爱管闲事正确的,但几乎没有人打扰出于显而易见的原因)

eval [list vcom] $compilationArgs [list -work work polar2rect/sc_corproc.vhd]

在与扩展语法顶部的版本( {*}是最好的,如果支持。 你可以判断它是否足够容易; 如果它不是,它是一个语法错误。



文章来源: Problem starting program (vcom) with multiple arguments in TCL
标签: arguments tcl