开发者

How to get automake, libtool, and rpmbuild to work together

I'm trying to create an RPM of my package, which is built using automake and libtool, and I've encountered a problem: rpmbuild aborts upon discovering that the installed programs of the package contain the pathname of the installation directory for the package's sharable libra开发者_开发百科ries (due to automake's use of the -rpath option of ld).

I understand that rpmbuild does this in order to guarantee that the package is relocatable. My question is what to do about it. I could eliminate the use of sharable libraries (and lose their benefits) or I could tell automake to not install the sharable libraries (which would stop it from using the -rpath option) and then install them anyway. The cost of this latter option is that it would require that the user always have a correctly-set LD_LIBRARY_PATH environment variable -- plus it seems like a bit of a kludge.

Is there another option?

What would you do?


The details of this depend on the particular package's build system and which libtool version it is using.

Here are the relevant packaging guidelines from Fedora: http://fedoraproject.org/wiki/PackagingGuidelines#Beware_of_Rpath

Here is the analogous page from Debian: http://wiki.debian.org/RpathIssue

Wikipedia also has some relevant links: http://en.wikipedia.org/wiki/Rpath_(linking)

So you will need to try a few of the suggested techniques for getting rid of the rpath, but which one will work depends on the specifics of your package.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜