大型工程软件如Ansys、Fluent、Unigraph、ProE等安装需要经过注册程序Flexlm才可以使用,而Flexlm中涉及到很多知识、技巧,也存在许多问题。本篇文章就是针对上述软件安装中的常见问题作一些探讨与解决。
Flexlm 介绍—常见EDA软件的license管理
一、什么是 Flexlm? 
Flexlm是由Globetrotter 公司发明的软件加密方法Flexible License Manager。Globetrotter 公司向软件厂商出售相关开发软件,软件厂商把此加密程序集成到自己的软件中。可以锁定机器的硬盘号,网卡号,使用日期,支持加密狗,以保护软件的知识产权。被80%以上的EDA软件公司所采用,是目前最流行的EDA软件加密方法,保护着世界上价值几百亿美元的EDA软件。了解Flexlm可以使我们正确的安装,管理和使用多个EDA软件。
Flexlm所管理的是License文件,所以我们首先要了解License文件的结构,以便于运行Flexlm管理License文件。
二、License文件的结构
License文件由注释行,Server行,Demon行, 以及Feature行构成。
注释行: 当一行的开始是"#"符号时,该行被License Manager(lmgr32xx)认为是注释行,有时候"|"也可以作为注释行的开始。
Server行 :Server行用来标识一台特定的主机,其格式是::
SERVER nodename id port-number 
                              TCP端口号,如 1700 
                           主机的ID号,Win95/98/NT平台下通常是网卡物理地址    
                     主机的名称,win95/98/NT下可以用ipconfig命令看到 
         Server行开头的关键字,标识该行为Server行,不能更改. 
例如:SERVER hostname 000012345678 TCP:1700    
Daemon(或Vendor)行:Deamon行是用来标识不同的卖主, 或者说是用来标识不同的软件商吧。其常见格式是:
DAEMON daemon_name daemon_path  
daemon的路径 
                      daemon的名字 
        Deamon行的关键字,FLEXlm6.0以后的版本也支持用VENDOR 
例如: 
DAEMON cdslmd c:\cdslic\bin\cdslmd.exe 
                               Cadence License Daemon的路径 
          Daemon的名字为cdslmd (Cadence License Manager Daemon 的简称)
    Feature行: Feature行是用来对软件特定的功能进行限制的,其常见的格式为:
FEATURE name vendor version expiration_date n Key "Vendor_String" hostID 
                           版本号      过期时间                        主机ID,可省略
                   厂商标识                                 厂商定义的字符串
                 Feature名称                    20个字节的密码
      Feature行的关键字                     许可的终端用户个数


例如 FEATURE CADV_256SUPUC_ALL cdslmd 8.000 1-jan-0 9 2884F2781DB8 "J" 
                                                                              Vendor string
                                                                     密码 
                                                             允许9个终端用户  
                                                         0年1月1日过期,0年表示永久有效 
                                                  版本8.0,可以是时间,也可以是版本号.
                                      厂商标识
                      Feature名称 ,即允许开通的功能
详细的FLEXlm文件格式可以参考FLEXlm的End-User-Manual. 
又如:
FEATURE maxplus2 alterad 2001.12 25-sep-2002 uncounted E71125CEA376 \HOSTID=GUARD_ID=T000072362
? FEATURE:关键字
? maxplus2: FEATURE名
? alterad:厂商标识
? 2001.12:版本标记
? 25-sep-2002 :2002年9月25日超期,如:是permanent或0,表示永不过期
?  uncounted:使用人数限制
? E71125CEA376:密码
? HOSTID=GUARD_ID=T000072362 :运行机器的特征, 只有检测到存在T000072362的加密狗时,软件才可以使用。这里也可以指定硬盘号,网卡号等等
三、Flexlm License manger工具的安装
一些软件并不需要安装专门工具来管理license,如:MaxplusII等。但更多EDA软件需要专门工具进行管理。安装很多EDA软件的时候, 会有一个安装License Server的选项, 安装完成后会在控制面板中发现一个FLEXlm License Manager的工具.
四、Flexlm License manger工具的使用
点击Flexlm License manger,出现如下窗口中,找到相应lmgrd.exe,并指定license.如果有多个License文件,要用分号隔开。有的EDA软件没有License Server安装选项.但软件本身就自带FLEXlm License Manager, 如Leonado Spectrum程序组下可以找到FLEXlm Manager这个程序,用鼠标点击运行就会出现上面提到的那个管理窗口。Win95/98下还需要在autoexec.bat中加入如下一行:
- SET LM_LICENSE_FILE=c:\flexlm\license.dat
如果有多个License文件,可以用分号隔开,如:
-  SET LM_LICENSE_FILE=c:\flexlm\license1.dat ; d:\altera\license2.dat
Win2000和NT,则需要在系统环境变量中设定这些参数。设置完以后需要重新启动计算机
注意事项
? 不要随意更改系统时间!
- Flexlm加密系统会监测系统文件的时间
? 更改系统时间导致的常见错误信息:
- Flexlm error, system clock has been set back
? 解决方法
- 查找C:\windows\下所有时间不正确的系统文件文件,在正常的系统时间下将其修改保存
- 应用专用文件时间管理软件修改文件时间,我们可以在互联网上下载这类软件,我已经下载了一个这样的软件
- 重装系统
如需了解关于FLEXLM更详细的资料请参考FLEXlm的End-User-Manual或浏览:
[url]http://www.globetrotter.com[/url]
设置环境变量
以下都是针对Win95/98以及NT来说的. 
    一般说来,License Manager需要在设置一个环境变量才能找到License文件. (有的软件不需要设置环境变量,只需将license文件放置到它的某个目录下面就可以了, 如Active VHDL3.3,只需将license.dat放在它的dat目录下.) 
通常环境变量名称是LM_LICENSE_FILE, 大小写无关,Win95/98下的设置方法是在autoexec.bat中加入一行: (不包括下面那些说明) 
  SET LM_LICENSE_FILE=c:\flexlm\mylicense.dat 
                                  环境变量路径: 该例是License文件的名称及路径 
               变量名称 
如果有多个License文件,可以用分号隔开,如: 
SET LM_LICENSE_FILE=c:\flexlm\license1.dat;d:\flexlm\license2.dat 
应用软件的License Manager会自动遍历环境变量指定的所有License文件, 查找它所需要的Feature, 不同License文件路径的先后次序无关, 只有WorkviewOffice7.5比较特殊,必须将它的环境变量放在第一个才能工作,否则它就不工作:
SET LM_LICENSE_FILE=c:\WVO75\license.dat;c:\flexlm\mylicense.dat
除了LM_LICENSE_FILE这个环境变量名称外, 有些软件还使用自己特定的环境变量名称. 安装软件的时候, 安装程序会一般会自动添加这些环境变量. 如Specctra8.0使用CDS_LIC_FILE环境变量名称: 
SET CDS_LIC_FILE=c:\cdsLic\license.dat 
MentorGraphicsRenoir以及ModelSimEE如果安装的时候选择Mentor Graphics License Manager, 软件会使用MGLS_LICENSE_FILE环境变量: 
SET MGLS_LICENSE_FILE=c:\flexlm\license.dat 
如果License是由Server提供的, 那么环境变量的路径应该给出Server的名称以及端口, 而非License文件的路径以及名称, 如: 
SET LM_LICENSE_FILE=1700@[url]www.myhost.edu.cn[/url] 
                       让License Manager去[url]www.myhost.edu.cn[/url]的1700端口获取License 
WinNT下设置环境变量需要在控制面板里面添加, 格式相同.
License文件使用技巧
这次想解决的问题是 -- License文件多了怎么办?不知道为什么FLEXlm很流行, 机器里面装得EDA软件多了, 会有若干个License.dat.由于环境变量只是告诉Lmgr(license manager)从哪儿找它所需要的license文件, 所以:
    第一个解决办法是可以将License.dat换个名字,如pwpcb.Lic, cct80.Lic等等,然后用设置多个License文件环境变量的办法将每一个文件的路径添加到环境变量中:
SET LM_LICENSE_FILE=c:\flexlm\pwpcb.Lic;c:\flexlm\cct80.Lic 
License文件的名称/后缀可以任意选取,只要保证变量设置正确以及License文件有效即可。
还可以这么做: ---- 不推荐使用 :)
只设置一个环境变量设置:    SET LM_LICENSE_FILE=c:\flexlm\license.dat,然后把所有的License文件都copy到FLEXlm目录下, 为了便于区分, 取比较容易记的名字,例如PowerPCB2.1.Lic, ModelSimEE5.2e.Lic, Specctra8.0.Lic,等等,需要用哪个软件的时候, 把相应的License文件copy一份然后改名为license.dat即可。Copy, Rename, Copy, Rename...太麻烦了:(, 于是采用第二种解决办法--合并License.(注:仅用于没有Server Line的License文件,且软件用的环境变量名为LM_LICENSE_FILE) 
前面介绍过License文件的格式, License文件的内容不再是陌生的了,可以用文本编辑器打开所有的License文件,把它们的内容统统copy&paste到license.dat里面. 然后只设置一个环境变量:   SET LM_LICENSE_FILE=c:\flexlm\license.dat 
FLEXlm Server方式的License应该如下设置: 
License.dat文件放在主机中, 主机运行Server提供License服务, 客户端的环境变量设置为 SET LM_LICENSE_FILE=[TCP/IP端口]:[主机名称], 其中端口和主机名称应该和主机的License文件中的Server Line一致, 前面已经简单介绍过, 这里便不再赘述。
启动Server的方式有两种, 一是Dos命令行方式, 二是Windoz的窗口方式 
1. Dos 方式 
在c:\flexlm目录下可以找到一个Lmgrd.exe文件---License Manager Daemon, 这个Daemon是FLEXlm Server。License.dat文件需要和Daemon文件放在同一个目录下,启动 license server,可在 c:\flexlm 目录下执行:c:\flexlm\lmgrd -app -c ;关闭 license server,可在 c:\flexlm 目录下执行:c:\flexlm\lmutil lmdown:lmutil.exe是License Manager Utility. 
2. Windoz的窗口方式
安装某些软件的时候, 会有一个安装License Server的选项, 选中它安装完成后会在控制面板中发现一个FLEXlm License Manager的小工具. 在FLEXlm License Manager Setup的TAB里可以选择Daemon, License文件,以及输出的日志文件; Control的TAB中可以启动/关闭Server以及查看Server状态, 另外几个TAB还提供了一些其它辅助功能。
Windoz下的这个FLEXlm License Manager要比命令行方式的方便一些, 至少它可以浏览以选取Daemon/License文件, 不过有时候发现控制面板里面找不到. 事实上它是一个控制面板的扩展应用程序, 如在PowerPCB目录下可以找到FLEXlm.cpl这个文件, 用鼠标双击它就运行出上面提到的那个管理窗口。没有研究过解决一个主机运行多个Server分别对应不同的软件的问题。
1.设定环境变量(控制面板--->系统-->环境)LM_LICENSE_FILE,多数软件都使用这个变量,这也是冲突根源。但也有一些软件用别的名称,如:
UG--------->UGII_LICENSE_FILE=27000@CAD
ESRD------->ESRD5_LICENSE_FILE=F:\ESRD\STRESSCHECK5
以下变量由软件安装时或第一次设定后自动保存在注册表里:
MASTERCAM----->MCFLEX_LICENSE_FILE=F:\MILL72\LICENSE
COSMOS系列---->BRNI_LICENSE_FILE=F:\COSMOSM\LICENSE\FLEXLM\LICENSE.DAT
MSC系列------->MSC_LICENSE_FILE=F:\MSC\FLEXLM\LICENSES\LICENSE.DAT
MAPLE6-------->MAPLELMG_LICENSE_FILE=F:\MAPLE 6\LICENSE\LICENSE.DAT
注意事项:
1. 没有设好会出现错误如:
I-DEAS:DETECTED LOSS OF COMMUNICATION WITH I-DEAS LICENSE DAEMON.
2. :PRO/E好像不用设定LM_LICENSE_FILE安装自动设<COMPUTER NAME>@7788;
3. LM_LICENSE_FILE变量可设置多个路径如:
F:\FEMAP80\LICENSE.DAT;F:\MARC\security\license.dat;中间用";"格开
4. 若是I-DEAS和别的软件冲突可在\IDEAS\MS7\bin\setup_varbs.cmd中加set LM_LICENSE_FILE=%SDRC_INSTL%\sec\license.dat
5. MASTERCAM7.2B安装后好像应清除LM_LICENSE_FILE设置,软件第一次运行时会让你查找LICENSE.DAT,然后自动保存在注册表里。
6. FEMAP8.0A的LICENSE.DAT应设在路径最前面,否则会出现以下错误INVALID LICENSE INFO,可能是它采用FLEXLM7.1b的原因?
7. :若设定多个LM_LICENSE_FILE路径有问题,可先设一个调试,确定是否是LM_LICENSE_FILE的原因?
8. 在控制面板-->FLEXLM LICENSE MANAGER-->SETUP中设SERVICE NAME,详细可到CAMONLINE([url]http://go.163.com/~camonline/[/url])查看
9. 若控制面板没有FLEXLM LICENSE MANAGER可从\PTC\FLEXLM\OBJ OR\UG160\UGFLEXLM拷贝一个FLEXLM.CPL到\WINNT\SYSTEM32,当然对FLEXLM7.0可直接用LMTOOLS.EXE,但是其START/STOP SERVER和查询SERVER STATUS不在一组内我感觉不如6.1方便,也可到控制面板-->服务中查询SERVER STATUS,更加直观
10. SERVICE NAME有时要手工设定,这取决于安装时选SERVER或CLIEN,详细可看.NFO文件,SERVICE NAME最好取与软件及版本相关如:I-DEAS8.0,因为软件安装时可能自动取相同的SERVICE NAME
11. 对PTC Pro/E和UG设一个SERVICE NAME就可以了,因为其高版本LICENSE可用于低版本,PTC PRO/E2000i的FLEXLM6.1不用UNINSTALL,可直接用于代替PRO/E2000i2 FLEXLM7.0,对于UG带PACKAGE的license得用UG FLEXlm Licensing选择不同PACKAGE好像最多只能选两个?
12. 对MSC和COSMOS(SRAC)系列可能要合并LICENSE,设一个SERVICE NAME并用最新的LMGRD.EXE及DAEMON(MSC.EXE,SRAC.EXE),对于NASTRAN FOR WIN4.6还要多设一个FEAMAP7
13. 若是对同一软件设多个SERVICE NAME,会使LMGRD.EXE不断调用DAMON,系统会很慢,CPU近100%,应REMOVE一个SERVICE NAME
14. 有些软件不用设SERVICE NAME如:IMAGWARE SURF,ESRD STRESSCHECK,MASTERCAM,MAPLE6直接COPY LICENSE.DAT到安装目录或C:\FEXLM,不知道是何原因?
15. 要查看LICENSE是否正确可STOP SERVER,START SERVER再看Debug.log信息
本文转自 goldwinner 51CTO博客,原文链接:http://blog.51cto.com/355665/83148,如需转载请自行联系原作者

Flexlm介绍—常见EDA软件的license管理相关推荐

  1. 中创软件银行信贷管理SOA解决方案

    1.1. 引言 我国的金融信息化建设起步于20世纪80年代中期,经过20多年的发展,目前已基本形成了比较完善的基于IT的金融服务体系,取得了令人瞩目的成就. 对 于一个现代银行企业来说,敏捷企业的第一 ...

  2. deskvideosys软件license管理功能介绍及使用

    license管理功能是上网行为管理软件deskvideosys最近开发的一个功能,这个功能的主要作用就是管理软件的license信息,以及校验软件使用的截止日期,主要的功能包括license文件的查 ...

  3. agv matlab应用,简单介绍一下agv调度控制系统常见的软件应用

    我们都知道,AGV机器人主要是靠调度控制系统来运行的,因为调度控制系统是agv的核心的部分,它所承担的工作起到一个关键性的作用,例如装卸任务,自主导航,通过导航技术实现自主路径规划功能,并且可以无缝对 ...

  4. 【包管理工具】Windows下的软件包管理工具Chocolatey介绍、安装软件出现错误的解决方法

    文章目录 1. Chocolatey是什么? 2. 为什么要使用Chocolatey? 3. 如何下载Chocolatey? 4. 如何使用Chocolatey? 5. 示例一:使用Chocolate ...

  5. EDA软件分类和介绍

    电子设计自动化(英语:Electronic design automation,缩写:EDA)是指利用计算机辅助设计(CAD)软件,来完成超大规模集成电路(VLSI)芯片的功能设计.综合.验证.物理设 ...

  6. 常用eda软件orcad、ewb、protel和pads对比介绍

    美国Cadence公司的OrCAD.加拿大Interactive Image Technologies公司的EWB.澳大利亚Altium公司的PROTEL.美国Mentor Graphics公司的PA ...

  7. EDA软件—Cadence学习笔记分享(内含安装教程)

    作为流行的EDA工具之一,Cadence一直以来以其强大的功能受到广大EDA工程师的青睐.Cadence可以完成整个IC设计流程的各个方面. Cadence 软件是一个功能强大的系统工具,包括很多功能 ...

  8. 常见机器视觉软件OpenCV/Halcon/VisionPro/MIL的区别

    文章转载自微信公众号<机器视觉课堂> 专家总结常见机器视觉软件 机器视觉处理软件:用来完成输入图像数据的处理,通过一定的运算得出结果,这个输出的结果可能是PASS/FAIL信号.坐标位置. ...

  9. EDA软件常用技巧-SCL配置

    快捷目录 1 Synopsys license scl配置 文章目录 快捷目录 前言 一.SCL是什么? 二.SCL组成 1. scl软件 2. license文件 3. 运行 三.排故 1 如何判断 ...

最新文章

  1. 2021年大数据ZooKeeper(二):ZooKeeper集群搭建
  2. adb 输入很长的内容 (input text) 在模拟机输入框里面快速输入内容
  3. Spring @bean冲突解决方案
  4. iOS网络编程开发—HTTP协议
  5. Oracle 数据库设置最大进程数参数方法,oracle最大进程数满了处理方法,sysdba管理员登录报“maximum number of processes (150) exceeded“问题解决
  6. 软件架构设计_给非专业人士介绍——软件架构设计工作
  7. 笔记本电脑排名2015_2015-2026全球及中国AC-DC电源适配器市场发展现状调研及未来前景行业展望...
  8. [AtCoder Beginner Contest 216] 题解
  9. 不同操作系统上DNS客户端操作区别汇总
  10. python模仿声音_5秒钟让python克隆别人的声音
  11. elasticsearch中的API
  12. 随想录(关于ucore)
  13. LightweightCTI开发实录(5)板卡适配器概述
  14. ios开发自定义Cell分割线(分隔线)选中(点击时)时消失
  15. 查询sql数据库端口 笔记
  16. 有关cdsn论坛被封后如何解封
  17. face_alignment库获取人脸图片landmark示例
  18. 如何制作纯净的U盘启动盘
  19. 云时代数据容灾的正确姿势
  20. 如何避免“被贷款”影响个人信用记录?

热门文章

  1. enfp工具箱怎么用_完整页通用pe工具箱怎么用?详细步骤教你怎么用_9号资讯
  2. selenum登录网页版有道词典
  3. 在VM虚拟机中的CentOS8下安装Django
  4. 【2022最新版】Web前端实战教程
  5. 副本集是如何实现自动Failover的
  6. 2021年华中科技大学计算机学院考研指南
  7. Mac 生成 SSH 密钥
  8. 《汇编语言程序设计》——仿windows计算器
  9. java程序暂停指令_Javascript中暂停功能的实现代码
  10. 【xshell】xshell免费个人使用下载安装