Linux下c/c++相对路径动态库的生成与使用

Linux下的动态库使用默认都是用的绝对路径下的,就那几个指定的lib路径,如果需要使用其他的路径下的库的话,需要设置LD_LIBRARY_PATH 并且export 出去。 这样的话,对于一个程序自己的私有库的使用就比较复杂,于是我想到了使用windows下面的办法,用相对路径。

linux下的相对路径的动态库使用主要是通过编译选项的指定来实现,即rpath。

我是用qmake来配置的。

动态库的生成配置如下:

TEMPLATE = lib
TARGET = ./Release/z
DEPENDPATH += .
INCLUDEPATH += .

HEADERS +=

SOURCES +=

CONFIG -= qt
CONFIG += dll
上面的 TEMPLATE必须指定为lib,用来生成库而不是程序,CONFIG 加上 dll表示生成的是动态链接库。

使用库的配置:

TEMPLATE = app
TARGET = 

CONFIG -= qt
unix: LIBS += -L./ -lz
unix:{
    QMAKE_LFLAGS += -Wl,--rpath=./
}

转载于:https://my.oschina.net/jeromecui/blog/135678

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值