LD_LIBRARY_PATH与-L的关系以及延伸】的更多相关文章

最近跟同学讨论c++在编译时g++ -L.. 和LD_LIBRARY_PATH的问题,今天在做一个东西的时候发现,我对这两个东西的理解是错误的,经过一番研究,写下我对这些东西的想法,如果有不对的地方,欢迎指正. 我遇到的问题: g++ multiple.cpp -L/usr/local/lib -lboost_program_options编译完后,ldd ./a.out发现 libboost_program_options.so.1.55.0 => not found 但是,当我在.bashr…
我之前写过一篇关于LD_LIBRARY_PATH与gcc/g++ -L的关系的文章,于是我自己用CPACK制作了一个Debian安装包,然后我在/home/.bashrc里添加了export LD_LIBRARY_PATH=/usr/loca/lib:$LD_LIBRARY_PATH,再然后老大告诉我这个方法不行,打回重新想办法,经过一番寻找终于找到了---ld.so.conf可以完美解决这个问题. 首先说说,为什么LD_LIBRARY_PATH不行?可以看看老外是怎么说的 一般LD用在下面情况…
https://my.oschina.net/shelllife/blog/115958 链接动态库 如何程序在连接时使用了共享库,就必须在运行的时候能够找到共享库的位置.linux的可执行程序在执行的时候默认是先搜索/lib和/usr/lib这两个目录,然后按照/etc/ld.so.conf里面的配置搜索绝对路径.同时,Linux也提供了环境变量LD_LIBRARY_PATH供用户选择使用,用户可以通过设定它来查找除默认路径之外的其他路径,如查找/work/lib路径,你可以在/etc/rc.…
链接器ld的选项有 -L,-rpath 和 -rpath-link,看了下 man ld,大致是这个意思: -L::  “链接”的时候去找的目录,也就是所有的 -lFOO 选项里的库,都会先从 -L 指定的目录去找,然后是默认的地方. 编译时的-L选项并不影响环境变量LD_LIBRARY_PATH,-L只是指定了程序编译连接时库的路径,并不影响程序执行时库的路径, 系统还是会到默认路径下查找该程序所需要的库,如果找不到,还是会报错,类似cannot open shared object file…
关联关系 关联关系是指执行者与用例之间的关系,又称为通信关系,如果某个执行者可以对某个用例进行操作,它们之间就具有关联关系,如下图所示,“经理”有一个功能为“查看库存报表”,因此可以在执行者“经理”和用例“查看库存报表”之间建立一个关联关系,关联关系用实线表示. 泛化关系 执行者之间的关系只有一种,即泛化关系,用一个带有空心三角形的实线表示,如下图所 示,在该图中,仓库管理员.系统管理员.经理都是员工的一种,因此员工拥有的功能这三 者都拥有,如登录.修改个人信息等,为了减少用例的个数并且使系统更…
(1) 关联关系 关联关系是指执行者与用例之间的关系,又称为通信关系,如果某个执行者可以对某个用例进行操作,它们之间就具有关联关系,如下图所示,“经理”有一个功能为“查看库存报表”,因此可以在执行者“经理”和用例“查看库存报表”之间建立一个关联关系,关联关系用实线表示. (2) 泛化关系 执行者之间的关系只有一种,即泛化关系,用一个带有空心三角形的实线表示,如下图所示,在该图中,仓库管理员.系统管理员.经理都是员工的一种,因此员工拥有的功能这三者都拥有,如登录.修改个人信息等,为了减少用例的个数…
1.   序 最近在折腾各种.so,碰到了一些问题,一开始对于很多错误也没有头绪,茫然不知所措.索性化了一天多时间将<<程序员的自我修养—链接.装载与库>>中部分内容略读了一遍,主要是关于编译,链接和加载这块的.于是顺便做个笔记,方便以后回顾.基本上知道了这些,对于编译,链接和加载过程中产生的各种问题,应该就能从根本上理解并解决了.其实以前上学时也看过那本经典的<<Linker and loader>>,当时还写了篇<<链接器和加载器原理>…
ORM(映射关系) 映射关系: 表名 <-------> 类名 字段 <-------> 属性 表记录 <------->类实例对象 创建表(建立模型) 在Django的ORM中,不同于我们尝试用的mysql,这里数据库中的一张表,相当于我们在python中的一个类,在我们创建一个类,给他设定属性的时候,就相当于是在给这个表添加字段,实例化的一些属性,就是给这个字段添加的约束等. 在建立模型的时候,我们要考虑到表与表之间的联系. 一对一 一对一的关系,就例如我们一个人会…
新建模型 class Author(models.Model): nid = models.AutoField(primary_key=True) name=models.CharField( max_length=32) age=models.IntegerField() # 与AuthorDetail建立一对一的关系 authorDetail=models.OneToOneField(to="AuthorDetail") class AuthorDetail(models.Mode…
ORM 映射关系: 类 ---> 表 属性 ---> 字段 对象 --->一条数据 创建表(建立模型) 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情模型和作者模型之间是一对一的关系(one-to-one) 出版商模型:出版商有名称,所在城市以及email. 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系…