2015-04-01 193 views
2

當我試圖運行我面臨着以下錯誤riscv模擬器ASM測試:RISCV測試模擬器

./emulator-DefaultCPPConfig +dramsim +max-cycles=100000000 +verbose +loadmem=output/rv64ui-p-amoand_d.hex none 2> output/rv64ui-p-amoand_d.out && [ $PIPESTATUS -eq 0 ] 
/bin/sh: 1: [: -eq: unexpected operator 
make: *** [output/rv64ui-p-amoand_d.out] Error 2 

我跟着你git你的指令。它可以在沒有任何錯誤的情況下構建模擬器,但是當它試圖運行測試時會發生問題。

我加bash在Makefile和解決的第一個錯誤的命令的後面,但是當我這樣做,我得到了一個新的錯誤:

bash ./emulator-DefaultCPPConfig +dramsim +max-cycles=100000000 +verbose +loadmem=output/rv64ui-p-amoswap_d.hex none 2> output/rv64ui-p-amoswap_d.out && [ $PIPESTATUS -eq 0 ] 
make: *** [output/rv64ui-p-amoswap_d.out] Error 126 
+0

輸出/ rv64ui-p-amoswap_d.out文件中有什麼? – Chris 2015-04-02 08:14:45

+0

我在另一個系統上運行了測試'make run-asm-tests',因爲我沒有訪問那個系統,但仍然有錯誤,但是這次是:'output/rv64ui-p-add.out'。在這個文件中只有配置寄存器。 – Moriss 2015-04-03 05:07:19

+1

什麼是'[$ PIPESTATUS -eq 0]'命令? – Moriss 2015-04-03 05:07:40

回答

1

的問題是從shell變量,我只是需要加入以下行到Makefile:

SHELL=/bin/bash 

它會解決問題。

+0

更正,Makefile沒有正確設置shell使用bash。您可以通過將SHELL環境變量設置爲bash來嘗試解決此問題。 – Chris 2015-04-07 21:47:15

+0

是的,你是對的謝謝 – Moriss 2015-04-09 18:31:40