在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 10301|回复: 8

synopsys LEDA在普通用户下无法正常启动

[复制链接]
发表于 2013-5-22 10:59:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 kevin0807 于 2013-5-22 11:01 编辑

LEDA装好后,也定义了环境变量变量,我用的是cshrc,可在普通用户下运行,就报:setenv:Too many arguments,无法正常启动leda,可就在该普通用户下su root,但还是用原普通用户下家目录的cshrc,就可以正常启动,这个问题真奇怪。也没查出问题所在,还烦请各位高手帮忙看看。谢谢!
如下图片:
1234.jpg
发表于 2013-5-22 12:13:06 | 显示全部楼层
setenv。。。
看起来是环境设置不对,which下看看leda是不是个脚本,适当的修改可以消除此错误
 楼主| 发表于 2013-5-22 15:41:16 | 显示全部楼层
这个是个脚本,我也看了里面内容,可不知道该修改哪处才能消除此错误,现将该脚本贴出来,请问该如何修改?十分感谢!




  1. #!/bin/csh -f
  2. #set echo

  3. ###  testing $LEDA_PATH ###
  4. if ( $?LEDA_PATH ) then
  5.     set ROOT_PATH = $LEDA_PATH
  6. else if ( $?PROTON_PATH ) then
  7.     set ROOT_PATH = $PROTON_PATH
  8. else
  9.         echo ""
  10.         echo "[ERROR] environment variable LEDA_PATH not defined\!"
  11.         exit(1)
  12. endif

  13. set realArg = ""
  14. set set64bit = 0
  15. set run_batch = 0
  16. set tclFound = 0
  17. if ( $?LEDA_RUN_BATCH ) then
  18.     set run_batch = 1
  19. endif

  20. ## foreach created problems while parsing some strings,so have used while!
  21. ## Changes bye Port Team: nsridhar
  22. #foreach arg ($argv:q)
  23. #    if ("$arg" == "-full64") then
  24. #        set set64bit = 1
  25. #    else
  26. #        set realArg = ($realArg:q "$arg")
  27. #    endif
  28. #end
  29. while ($#argv > 0)
  30.     if ("$1:q" == "-full64") then
  31.         set set64bit = 1
  32.     else if ("$1:q" == "-new_range") then
  33.         setenv LEDA_USE_NEW_RANGE
  34.     else if (($run_batch == 1) && ("$1:q" == "+tcl_file")) then
  35.         set tclFound = 1
  36.     else if (($run_batch == 1) && ($tclFound == 1 )) then
  37.         set t2b_opts = (`tclsh $LEDA_PATH/bin/t2b.tcl "$1:q"`)
  38.         set realArg = ($realArg:q $t2b_opts)
  39.         set tclFound = 0
  40.     else
  41.         set realArg = ($realArg:q "$1:q")
  42.     endif
  43.     shift
  44. end
  45. if ($run_batch == 1) then
  46.     if ( $?PWD ) then
  47.         set tmpEFile = "$PWD/tmp_t2b_env.tcl"
  48.         if ( -e $tmpEFile) then
  49.             source $tmpEFile
  50.             rm $tmpEFile
  51.         endif
  52.     endif
  53. endif

  54. if ($?FULL64) then
  55.     set set64bit = 1
  56. endif

  57. # determine which OS to be used
  58. set sys = `uname`
  59. set sys_release = `uname -r`
  60. set mach_release = `uname -m`
  61. switch ($sys)
  62.     case SunOS:
  63.       if ($mach_release == i86pc) then
  64.           set BIN_ROOT = $ROOT_PATH/x86sol32
  65.           if ($set64bit == 1) then
  66.              set BIN_ROOT = $ROOT_PATH/x86sol64
  67.           endif
  68.           if ( ! $?LD_LIBRARY_PATH ) then
  69.             setenv LD_LIBRARY_PATH $BIN_ROOT/bin
  70.           else
  71.             setenv LD_LIBRARY_PATH ${BIN_ROOT}/bin:$LD_LIBRARY_PATH
  72.           endif
  73.       else
  74.         switch ($sys_release)
  75.             case 5.9:
  76.             case 5.10:
  77.                  set BIN_ROOT = $ROOT_PATH/sparcOS5
  78.                  if ($set64bit == 1) then
  79.                      set BIN_ROOT = $ROOT_PATH/sparc64
  80.                  endif
  81.                  if ( ! $?LD_LIBRARY_PATH ) then
  82.                         setenv LD_LIBRARY_PATH $BIN_ROOT/bin
  83.                  else
  84.                    setenv LD_LIBRARY_PATH ${BIN_ROOT}/bin:$LD_LIBRARY_PATH
  85.                  endif
  86.                 breaksw
  87.             default
  88.                 goto error_Unsupported_platform
  89.                 breaksw
  90.             endsw
  91.       endif
  92.       breaksw
  93.     case HP-UX:
  94.         switch ($sys_release)
  95.             case *.11.*:
  96.                 set BIN_ROOT = $ROOT_PATH/hpux11
  97.                 if ( ! $?SHLIB_PATH ) then
  98.                    setenv SHLIB_PATH $BIN_ROOT/bin
  99.                 else
  100.                    setenv SHLIB_PATH ${BIN_ROOT}/bin:$SHLIB_PATH
  101.                 endif
  102.                 breaksw
  103.             default
  104.                 goto error_Unsupported_platform
  105.                 breaksw
  106.             endsw
  107.         breaksw
  108.     case Linux:
  109.     switch ("$mach_release")
  110.      case i686:
  111.        set BIN_ROOT = $ROOT_PATH/linux
  112.         if (-f /etc/SuSE-release) then
  113.           set BIN_ROOT = $ROOT_PATH/suse32
  114.         endif
  115.         breaksw
  116.      case x86_64:
  117.          set BIN_ROOT = $ROOT_PATH/linux
  118.          if (-f /etc/SuSE-release) then
  119.            set BIN_ROOT = $ROOT_PATH/suse32
  120.          endif
  121.          if ($set64bit == 1 || ! -e $BIN_ROOT/bin/leda) then
  122.              set BIN_ROOT = $ROOT_PATH/amd64
  123.              if (-f /etc/SuSE-release) then
  124.                set BIN_ROOT = $ROOT_PATH/suse64
  125.              endif
  126.          endif
  127.          breaksw
  128.       default
  129.       goto error_Unsupported_platform # make it to point to BIN_ROOT of linux
  130.       endsw
  131.       if ( ! $?LD_LIBRARY_PATH ) then
  132.            setenv LD_LIBRARY_PATH $BIN_ROOT/bin
  133.       else
  134.            setenv LD_LIBRARY_PATH ${BIN_ROOT}/bin:$LD_LIBRARY_PATH
  135.        endif
  136.       breaksw
  137.     case AIX:
  138.         switch ($sys_release)
  139.             case 1:
  140.             case 3:
  141.                 if ($?LIBPATH) then
  142.                     setenv LIBPATH ${LIBPATH}:$ROOT_PATH/rs6000/bin
  143.                 else
  144.                     setenv LIBPATH $ROOT_PATH/rs6000/bin
  145.                 endif
  146.                 set BIN_ROOT = $ROOT_PATH/rs6000
  147.                 breaksw
  148.             default
  149.                 goto error_Unsupported_platform
  150.                 breaksw
  151.             endsw
  152.         breaksw
  153.     default
  154.         goto error_Unsupported_platform
  155.         breaksw
  156. endsw


  157. ### set executables ###

  158. set leda = "$BIN_ROOT/bin/leda "

  159. ### test and executables ###                 

  160. if !( -e $leda) then
  161.         echo "[Error] $leda not found \!"
  162.         exit(1)
  163. else
  164.     if !( -x $leda) then
  165.         echo "[Error] $leda : Execute permission denied"
  166.         exit(1)
  167.     endif
  168. endif

  169. ### execute command ###
  170. ### use explicitly exec to forbid errors when executing in bg
  171. if ( $?LEDA_RUN_BATCH_PRINT ) then
  172.     echo "$leda $realArg:q"
  173. endif
  174. $leda $realArg:q
  175. set leda_status = $status
  176. ### tmpFile is for t2b regression, remove it before exit
  177. set tmpFile = "$PWD/tmp_t2b_constrains.tcl"
  178. if ( -e $tmpFile) then
  179.     rm $tmpFile
  180. endif

  181. exit($leda_status)

  182. ######################################################################
  183. error_Unsupported_platform:
  184.     echo ""
  185.     echo "[ERROR] $sys $sys_release : Unsupported platform\!"
  186.     exit(1)



复制代码
发表于 2013-5-24 06:21:56 | 显示全部楼层
你看一下目录权限把,看是否赋予普通用户合法的权限
发表于 2013-5-24 07:30:25 | 显示全部楼层
应该从setenv:too many argument找原因
可能是用户的.cshrc中设置setenv有问题,而root的.cshrc中没有问题
发表于 2013-10-23 16:17:20 | 显示全部楼层
看看你的leda的安装路径是否有一些不合法的自付,比如空格等
发表于 2017-6-21 09:48:51 | 显示全部楼层
。。。
发表于 2021-12-8 09:58:08 | 显示全部楼层
thanks.
发表于 2024-5-8 13:55:09 | 显示全部楼层
遇到过这种情况。cd ~,然后再source ~/.cshrc就好了。也不清楚什么是原因导致的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 11:02 , Processed in 0.027724 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表