第一次在linux下安装CUDD包及遇见的问题

(一) 下载CUDD安装包

    在ftp://vlsi.colorado.edu/pub/上面可以下载到;

        ftp domain.com
	ftp 192.168.0.1
	ftp user@ftpdomain.com


    可以用来登陆ftp;进入ftp服务器之后可以用常用的linux命令来操作,如ls,cd等;


    在下载一个文件之前,我们首先需要使用lcd命令设定本地接受目录位置。


	lcd /home/user/yourdirectoryname

  

    如果不设置的话,则默认下载到你进入ftp时的目录;

    现在,可以使用命令 get 来下载文件,比如:


	get filename

    完成FTP工作后,为了安全起见需要关闭连接。有三个命令可以关闭连接;


        bye
	exit
	quit

    下载完成后,需要解压文件:


	gzip -dc cudd-3.0.0.tar.gz | tar xvf -

    最后进入cudd-3.0.0文件夹准备安装。



(二)  安装CUDD包


    首先进入文件夹后,里面会有一个README文件,需要自己读一下,里面有安装的参数;

    里面先介绍了一种简单安装的方案:


	./configure
	make
	make check

     我把这些东西输入之后一大串,当时没有自己关注;然后我建了一个c文件,里面包含#include"cudd.h"报错,

    我以为是没有安装好,其实当时应该已经安装好了。

    然后我就开始用文件里给的第二个方法:

	./configure CC=clang CXX-clang++ --enabl
        e-sient-rules \
	--enable-shared --enable-obj
	make -j4 check
	make install

           当时也不知道CC和 CXX是什么意思;看着一大串估计安装好了,但是测试还是不行;我回头看了下具体的输             出,     发现configure就出错了,

     显示Invalid configuration `CXX-clang++'然后我把这个参数去掉并换成挨个输入:

	./configure --enable-sient-rules --enable-s hared --enable-obj --enable-dddmp

 

      看到信息,已经正确configure;

    然后:

	make -j4 check


       也显示出了正确;


    最后:

	make install

       但是显示有错误:

	make[1]: *** [install-libLTLIBRARIES] Error 1


       回头找错误信息:

	/usr/bin/install: cannot create regular file '/usr/local/lib/libcudd.la': Permission denied

       原来是cudd文件夹里面有我的权限不能操作的文件,然后用:


	sudo make install

      正确安装完成!

    但是还没有结束~~~


(三)最后设置环境变量


    我测试后还是不行,然后我学会看信息了,发现下面一段说明:


Libraries have been installed in:
	   /usr/local/lib

	If you ever happen to want to link against installed libraries
	in a given directory, LIBDIR, you must either use libtool, and
	specify the full pathname of the library, or use the `-LLIBDIR'
	flag during linking and do at least one of the following:
	   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
	     during execution
	   - add LIBDIR to the `LD_RUN_PATH' environment variable
 	     during linking
 	   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
 	   - have your system administrator add LIBDIR to `/etc/ld.so.conf'


       然后我意识到是因为系统没有默认到/usr/local/lib下面去找库文件,解决方法是:

    在 /etc/ld.so.conf.d 下新建一个文件 local.conf,里边写上 /usr/local/lib。然后以 root 权限执行         ldconfig。这样你的系统才会找得到安装到 /usr/local/lib 下的库文件。


到此大功告成,测试也成功了!!!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Cudd是一种用于多值布尔函数操作的库,用于应对大型布尔函数的高效实现和分析。Cudd包的实现和分析主要包括以下几个方面。 首先是实现方面。Cudd使用二进制决策图(Binary Decision Diagram,简称BDD)来表示布尔函数。BDD是一种有向无环图,其中节点表示布尔变量的赋值,边表示布尔函数的计算路径。Cudd实现了BDD的构建和操作算法,包括布尔函数的合取、析取、取反等操作。此外,Cudd还实现了一系列的方法来优化BDD的大小和性能,例如变量的重新排序、节点的合并等。 其次是分析方面。Cudd提供了一系列的分析函数,用于评估和优化布尔函数的性质。例如,Cudd可以计算BDD的节点数、叶子数和路径数,从而评估BDD的大小和复杂度。此外,Cudd还能够计算布尔函数的满足性和不满足性,并找到满足性和不满足性的解析解。这使得Cudd能够在设计自动化和形式验证等领域发挥重要作用。 最后是应用方面。Cudd广泛应用于计算机辅助设计(Computer Aided Design,简称CAD)和形式验证等领域。在CAD领域,Cudd可以用来处理和优化布尔函数,例如逻辑综合和基于BDD的电路布局。在形式验证领域,Cudd可以用来表示、操作和分析系统的状态,例如模型检测和形式规约。通过Cudd的高效实现和分析,这些应用可以更加准确和高效地完成。 综上所述,Cudd包的实现和分析涵盖了BDD的构建和操作、布尔函数的性质评估和优化、以及多个应用领域的需求。通过Cudd,我们能够更好地处理和分析大型布尔函数,从而在计算机辅助设计和形式验证等领域取得更好的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值