gpt4 book ai didi

c++ - 共享库、库依赖

转载 作者:太空狗 更新时间:2023-10-29 12:07:16 27 4
gpt4 key购买 nike

是否可以提供一个共享库——在创建过程中链接到另一个共享库——对最终用户透明?

举个例子说明我的意思:

共享库构建

g++ ... `pkg-config gtk+-2.0 --cflags` ... `pkg-config gtk+-2.0 --libs`

所需的用户构建

g++ file.cc -lfoo

libfoo.so.0 是共享库。

如果用户构建包含 pkg-config gtk+-2.0 ...,我似乎只能让它工作。在创建共享对象期间,有没有办法让最终用户不必担心 libfoo 中使用的间接库?

最佳答案

如果你有一个链接到 libXYZ.so 的共享库 libABC.so 那么,
在创建 libABC.so 时,您必须链接 libXYZ.so

 ld --shared -o libABC.so -L. -lXYZ

在编译应用程序时,

gcc app.c -L. -lABC

别忘了,导出库路径

export LD_LIBRARY_PATH=.

关于c++ - 共享库、库依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6627180/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com