在“进行测试”期间无法打开Perl脚本“ / bin / verilator”

时间:2019-10-05 17:39:00

标签: linux perl terminal root verilator

我正在按照教程在RHEL环境上安装程序,到目前为止,我已经克服了一些错误。我在安装过程的最后,尝试通过“ make test”确认有效性,该错误返回以下错误:

[user@localhost verilator-4.018]$ make test
Can't open perl script "/bin/verilator": No such file or directory
...
[Makefile:228: smoke-test] Error 10

我首先检查是否有一个verilator-4.018 / bin / verilator文件。

然后,我尝试在线研究错误并得到一个结果,用户表示可以通过“将VERILATOR_ROOT设置为结帐的根目录”来解​​决该问题,但是由于我不太了解如何解释此问题,是个初学者。

我尝试设置为root:

[root@localhost verilator-4.018]# make test

但是收到了相同的错误消息。

另外,请让我知道如何重新命名标题以使其更具体。我认为很难具体说明需要解释帮助的问题。

1 个答案:

答案 0 :(得分:1)

没有/ bin / verilator ...有class SpectralPage(tk.Frame): # @profile def __init__(self,parent,controller): tk.Frame.__init__(self, parent) self.fig, (self.a0, self.a1) = plt.subplots(2, 1, gridspec_kw={'height_ratios': [2.5, 1]}) self.a0.imshow(img,interpolation='none', aspect='auto',origin= 'lower',extent=[0.0, 13000.0, 0, 24500.0]) self.a0.set_ylabel('y [\u03bcm]') self.a0.set_xlabel('x [\u03bcm]') self.curva, = self.a1.plot([],[],'*') #referencia al artista self.a1.set_ylabel('Intensity [a.u.]') self.a1.set_xlabel('Wavelength [nm]') self.fig.tight_layout() self.canvas = FigureCanvasTkAgg(self.fig, self) self.canvas.draw() self.canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=True) toolbar = NavigationToolbar2Tk(self.canvas, self) toolbar.update() self.canvas._tkcanvas.pack(side=tk.BOTTOM, fill=tk.BOTH, expand=True) def init(): self.curva.set_data([], []) return self.curva, self.ani = animation.FuncAnimation(self.fig,self.animate,init_func=init,interval=100) @profile def motion(self,event): x_move = event.xdata y_move = event.ydata if opt == 0 or opt == 1: if self.a0 == event.inaxes: x_lst = find_nearest(xy_pos_df.iloc[:,0],x_move) y_lst = find_nearest(xy_pos_df.iloc[:,1], y_move) mouse_pos = xy_pos_df[(xy_pos_df.iloc[:, 0] == x_lst) & (xy_pos_df.iloc[:, 1] == y_lst)].index.tolist() # self.a1.clear() # self.a1.set_ylabel('Intensity [a.u.]') # self.a1.set_xlabel('Wavelength [nm]') if len(mouse_pos) == 0: pass else: if normalization == True: inten_norm = (inten_df.iloc[mouse_pos, :]/light_df.iloc[:]).abs() if opt == 0: self.curva.set_data(wavel_df.iloc[:, 0], inten_norm.transpose()) #self.a1.plot(wavel_df.iloc[:, 0], inten_norm.transpose(), '*') if opt == 1: clim = (350, 780) norm = plt.Normalize(*clim) wl = np.arange(clim[0], clim[1] + 1, 2) colorlist = list(zip(norm(wl), [wavelength_to_rgb(w) for w in wl])) spectralmap = matplotlib.colors.LinearSegmentedColormap.from_list("spectrum", colorlist) mouse_pos = mouse_pos[0] wavelengths = wavel_array #wavel_array[:, 0] spectrum = np.transpose(inten_norm) self.curva.set_data(wavel_array, spectrum) # plt.plot(wavel_array, spectrum, color='darkred') y = np.linspace(0, np.max(spectrum), 100) X, Y = np.meshgrid(wavelengths, y) extent = (np.min(wavelengths), np.max(wavelengths), np.min(y), np.max(y)) plt.imshow(X, clim=clim, extent=extent, cmap=spectralmap, aspect='auto') plt.xlabel('Wavelength [nm]') plt.ylabel('Intensity [a.u.]') plt.fill_between(wavelengths, spectrum, np.max(spectrum), color='w') if normalization == False: if opt == 0: self.curva.set_data(wavel_df.iloc[:, 0], inten_df.iloc[mouse_pos, :].transpose()) return self.curva, # self.a1.plot(wavel_df.iloc[:, 0], inten_df.iloc[mouse_pos, :].transpose(), '*') if opt == 1: clim = (350, 780) norm = plt.Normalize(*clim) wl = np.arange(clim[0], clim[1] + 1, 2) colorlist = list(zip(norm(wl), [wavelength_to_rgb(w) for w in wl])) spectralmap = matplotlib.colors.LinearSegmentedColormap.from_list("spectrum", colorlist) mouse_pos = mouse_pos[0] wavelengths = wavel_array # wavel_array[:, 0] spectrum = np.transpose(inten_df.iloc[mouse_pos, :]) # plt.plot(wavel_array, spectrum, color='darkred') self.curva.set_data(wavel_array, spectrum) y = np.linspace(0, np.max(spectrum), 100) X, Y = np.meshgrid(wavelengths, y) extent = (np.min(wavelengths), np.max(wavelengths), np.min(y), np.max(y)) plt.imshow(X, clim=clim, extent=extent, cmap=spectralmap, aspect='auto') plt.xlabel('Wavelength [nm]') plt.ylabel('Intensity [a.u.]') plt.fill_between(wavelengths, spectrum, np.max(spectrum), color='w') else: # self.a1.clear() # self.a1.set_ylabel('Intensity [a.u.]') # self.a1.set_xlabel('Wavelength [nm]') return def on_click(self, event): if self.a0 == event.inaxes: x_click = event.xdata y_click = event.ydata if opt == 2: # self.a1.clear() x_lst = find_nearest(xy_pos_df.iloc[:, 0], x_click) y_lst = find_nearest(xy_pos_df.iloc[:, 1], y_click) mouse_pos = xy_pos_df[(xy_pos_df.iloc[:, 0] == x_lst) & (xy_pos_df.iloc[:, 1] == y_lst)].index.tolist() if normalization == False: self.curva.set_data(wavel_df.iloc[:, 0], inten_df.iloc[mouse_pos, :].transpose()) # self.a1.plot(wavel_df.iloc[:, 0], inten_df.iloc[mouse_pos, :].transpose(), '*') if normalization == True: inten_norm = (inten_df.iloc[mouse_pos, :] / light_df.iloc[:]).abs() self.curva.set_data(wavel_df.iloc[:, 0], inten_norm.transpose()) # self.a1.plot(wavel_df.iloc[:, 0], inten_norm.transpose(), '*') @profile def animate(self,interval): if opt != 2: self.canvas.callbacks.connect('motion_notify_event',self.motion) if opt == 2: self.canvas.mpl_connect('button_press_event', self.on_click) self.canvas.draw() 。但这比这更棘手:测试是通过bin/verilator完成的,因此“ bin / verilator”是上一级的。

test_regress/driver.pl第782行编辑到

test_regress/driver.pl

...并且可以运行首次测试。

更多错误:“烟雾测试”失败:将使用安装目标中的文件。请执行 my @cmdargs = ("perl", "$ENV{VERILATOR_ROOT}../bin/verilator", ...,也可以运行下一个测试。

测试结果→# make install https://github.com/jrr1984/thorlabs_step_motors_ZST213B/blob/master/spectral_gui/jkdfha.py

请注意SYSTEMC设置。 make-test__result.txt是使用verilator

构建的

SYSTEMC是通过测试所必需的。参见$ export SYSTEMC_INCLUDE=/usr/local/include/ && export SYSTEMC_LIBDIR=/usr/local/lib-linux64 && ./configure && make