linux 64位vcs,求助,VCS在ubuntu 64位的问题
我在ubuntu 10.04LTS里面安裝了VCS,啟動VCS和DVE都可以,我編譯verilog文件的時候出現如下錯誤。
我有兩個文件,count.v 和count_tb.v,使用vcs count_tb.v count.v執行有問題。log如下:
/usr/synopsys/D-2010.06-4/bin/vcsMsgReport: line 332: /bin/basename: 沒有那個文件或目錄
Warning-[LNX_OS_VERUN] Unsupported Linux version
Linux version '' is not supported on 'x86_64' officially, assuming linux
compatibility by default. Set VCS_ARCH_OVERRIDE to linux or suse32 to
override.
Please refer to release notes for information on supported platforms.
Chronologic VCS (TM)
Version D-2010.06-4 -- Tue Feb 26 09:12:27 2013
Copyright (c) 1991-2010 by Synopsys Inc.
ALL RIGHTS RESERVED
This program is proprietary and confidential information of Synopsys Inc.
and may be used and disclosed only as authorized in a license agreement
controlling such use and disclosure.
9:12:27 (snpslmd) OUT: "VCSCompiler_Net" root@ubuntu
Parsing design file 'count_tb.v'
Parsing design file 'count.v'
Top Level Modules:
count_tb
TimeScale is 1 ns / 1 ns
Warning-[PALF] Potential always loop found
count_tb.v, 20
This always block has no event control or delay statements, it might cause
an infinite loop in simulation.
Starting vcs inline pass...
2 modules and 0 UDP read.
However, due to incremental compilation, no re-compilation is necessary.
9:12:28 (snpslmd) IN: "VCSCompiler_Net" root@ubuntu
if [ -x ../simv ]; then chmod -x ../simv; fi
g++-o ../simv -melf_i386 -m32SIM_l.o 5NrI_d.o 5NrIB_d.opre_vcsobj_1_1.ormapats_mop.o rmapats.o/usr/synopsys/D-2010.06-4/linux/lib/libvirsim.so /usr/synopsys/D-2010.06-4/linux/lib/librterrorinf.so /usr/synopsys/D-2010.06-4/linux/lib/libsnpsmalloc.so/usr/synopsys/D-2010.06-4/linux/lib/libvcsnew.so/usr/synopsys/D-2010.06-4/linux/lib/vcs_save_restore_new.o /usr/synopsys/D-2010.06-4/linux/lib/ctype-stubs_32.a -ldl-lc -lm -lpthread -ldl
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../libdl.so when searching for -ldl
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../libdl.a when searching for -ldl
/usr/bin/ld: skipping incompatible /usr/lib/libdl.so when searching for -ldl
/usr/bin/ld: skipping incompatible /usr/lib/libdl.a when searching for -ldl
/usr/bin/ld: cannot find -ldl
collect2: ld returned 1 exit status
make: *** [product_timestamp] 錯誤 1
Make exited with status 2
CPU time: .220 seconds to compile + .100 seconds to elab + .180 seconds to link
我加上-full64參數之后,出現另外一個錯誤,log如下:
/usr/synopsys/D-2010.06-4/bin/vcsMsgReport: line 332: /bin/basename: 沒有那個文件或目錄
Warning-[LNX_OS_VERUN] Unsupported Linux version
Linux version '' is not supported on 'x86_64' officially, assuming linux
compatibility by default. Set VCS_ARCH_OVERRIDE to linux or suse32 to
override.
Please refer to release notes for information on supported platforms.
Chronologic VCS (TM)
Version D-2010.06-4_Full64 -- Tue Feb 26 09:14:03 2013
Copyright (c) 1991-2010 by Synopsys Inc.
ALL RIGHTS RESERVED
This program is proprietary and confidential information of Synopsys Inc.
and may be used and disclosed only as authorized in a license agreement
controlling such use and disclosure.
9:14:03 (snpslmd) OUT: "VCSCompiler_Net" root@ubuntu
Parsing design file 'count_tb.v'
Parsing design file 'count.v'
Top Level Modules:
count_tb
TimeScale is 1 ns / 1 ns
Warning-[PALF] Potential always loop found
count_tb.v, 20
This always block has no event control or delay statements, it might cause
an infinite loop in simulation.
Starting vcs inline pass...
2 modules and 0 UDP read.
recompiling module count_tb
recompiling module count
Both modules done.
9:14:04 (snpslmd) IN: "VCSCompiler_Net" root@ubuntu
if [ -x ../simv ]; then chmod -x ../simv; fi
g++-o ../simv_vcsobj_1_1.o5NrI_d.o 5NrIB_d.o SIM_l.ormapats_mop.o rmapats.o/usr/synopsys/D-2010.06-4/amd64/lib/libvirsim.so /usr/synopsys/D-2010.06-4/amd64/lib/liberrorinf.so /usr/synopsys/D-2010.06-4/amd64/lib/libsnpsmalloc.so/usr/synopsys/D-2010.06-4/amd64/lib/libvcsnew.so/usr/synopsys/D-2010.06-4/amd64/lib/vcs_save_restore_new.o -ldl-lc -lm -lpthread -ldl
/usr/bin/ld: i386 architecture of input file `rmapats_mop.o' is incompatible with i386:x86-64 output
collect2: ld returned 1 exit status
make: *** [product_timestamp] 錯誤 1
Make exited with status 2
CPU time: .230 seconds to compile + .070 seconds to elab + .280 seconds to link
在線求助,感激不盡。
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../libdl.so when searching for -ldl
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../libdl.a when searching for -ldl
/usr/bin/ld: skipping incompatible /usr/lib/libdl.so when searching for -ldl
/usr/bin/ld: skipping incompatible /usr/lib/libdl.a when searching for -ldl
/usr/bin/ld: cannot find -ldl
collect2: ld returned 1 exit status
這個錯誤可以通過安裝g++-multilib解決,但是連接還是有第二個錯誤,怎么解決呢,log如下:
/usr/synopsys/D-2010.06-4/bin/vcsMsgReport: line 332: /bin/basename: 沒有那個文件或目錄
Warning-[LNX_OS_VERUN] Unsupported Linux version
Linux version '' is not supported on 'x86_64' officially, assuming linux
compatibility by default. Set VCS_ARCH_OVERRIDE to linux or suse32 to
override.
Please refer to release notes for information on supported platforms.
Chronologic VCS (TM)
Version D-2010.06-4 -- Tue Feb 26 09:43:44 2013
Copyright (c) 1991-2010 by Synopsys Inc.
ALL RIGHTS RESERVED
This program is proprietary and confidential information of Synopsys Inc.
and may be used and disclosed only as authorized in a license agreement
controlling such use and disclosure.
9:43:44 (snpslmd) OUT: "VCSCompiler_Net" root@ubuntu
Parsing design file 'count_tb.v'
Parsing design file 'count.v'
Top Level Modules:
count_tb
TimeScale is 1 ns / 1 ns
Warning-[PALF] Potential always loop found
count_tb.v, 20
This always block has no event control or delay statements, it might cause
an infinite loop in simulation.
Starting vcs inline pass...
2 modules and 0 UDP read.
recompiling module count_tb because:
Generated file (F6R9_1) not found, or not incremental.
recompiling module count because:
Generated file (r07N_1) not found, or not incremental.
Both modules done.
9:43:44 (snpslmd) IN: "VCSCompiler_Net" root@ubuntu
if [ -x ../simv ]; then chmod -x ../simv; fi
g++-o ../simv -melf_i386 -m32_vcsobj_1_1.o5NrI_d.o 5NrIB_d.o SIM_l.ormapats_mop.o rmapats.o/usr/synopsys/D-2010.06-4/linux/lib/libvirsim.so /usr/synopsys/D-2010.06-4/linux/lib/librterrorinf.so /usr/synopsys/D-2010.06-4/linux/lib/libsnpsmalloc.so/usr/synopsys/D-2010.06-4/linux/lib/libvcsnew.so/usr/synopsys/D-2010.06-4/linux/lib/vcs_save_restore_new.o /usr/synopsys/D-2010.06-4/linux/lib/ctype-stubs_32.a -ldl-lc -lm -lpthread -ldl
/usr/bin/ld: i386:x86-64 architecture of input file `rmapats.o' is incompatible with i386 output
/usr/bin/ld: final link failed: Invalid operation
collect2: ld returned 1 exit status
make: *** [product_timestamp] 錯誤 1
問題已經解決,哎整了將近兩天啊。
解決方法如下:
執行編譯命令,遇到這個問題后,在當前目錄下會有一個csrc目錄,進入這個目錄,發現有個Makefile,用gedit打開,將下面字段
# Override TARGET_ARCH
TARGET_ARCH=
修改為:
# Override TARGET_ARCH
TARGET_ARCH=x86-64
并且刪除*.o,rm *.o,然后再執行make,重新生成rmapats.o文件,這次生成的就對了。
這也是一種臨時解決辦法,真是折騰啊。
使用vcs -full64 x.v 仍然存在問題,采用類似方法會出現段錯誤,64位使用不了。只能使用32位的了。
=====================================================
= 后來64位的采樣類似的方法處理之后也可以,無語啊無語!方法如下:
=====================================================
正如上面所述,會遇到段錯誤,此時將csrc目錄刪除,rm -r csrc,然后執行下面命令:
vcs -full64 -m64 xx00.v xx01.v xx02.v
正確生成simv文件,模擬正確。
=====================================================
另外:我在安裝comon的時候,安裝到最后出現過錯誤,被我忽略了,不知道有沒有后遺癥。
根據目標目錄下的instll.log可以分析,暫且不管!
高手啊高手
不錯啊,剛好碰到這個問題
我的錯是“/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/x86_64-linux-gnu/crti.o' is incompatible with i386 output”
這個怎么搞定?我原來跑得好好的,都不知道裝那個東西搞爛的 T_T
跟Linux沒啥關系吧
good man
應該是前后兩次編譯的版本之類的有問題吧?
我也遇到同樣的問題,依照樓主的解法已經解決了,
最後我是用 vcs -full64 -m64 xxx.v 解決的,
感謝樓主
vcs開關不對,具體怎么操作我也不是很清楚,沒有細細研究vcs
Hi,
you just need to set VCS_TARGET_ARCH=amd64 to run full 64-bit simulation
總結
以上是生活随笔為你收集整理的linux 64位vcs,求助,VCS在ubuntu 64位的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux禁用页面拷贝粘贴,【Linux
- 下一篇: linux pti性能影响,Linux修