gpt4 book ai didi

c++ - GNU Linker 找不到本地共享库

转载 作者:行者123 更新时间:2023-11-30 03:42:02 27 4
gpt4 key购买 nike

我在 linux 上,我的链接器无法找到我的本地库。

当我运行时

ld -L<path to my lib dir> OpenImageIo

我明白了

ld: cannot find OpenImageIO: No such file or directory

但是 libOpenImageIo 在这里:

[k.masson@hauser24 lib64]$ ll
total 7856
lrwxrwxrwx 1 k.masson k.masson 21 May 4 17:53 libOpenImageIO.so -> libOpenImageIO.so.1.5
lrwxrwxrwx 1 k.masson k.masson 24 May 4 17:53 libOpenImageIO.so.1.5 -> libOpenImageIO.so.1.5.24
-rwxr-xr-x 1 k.masson k.masson 7542440 May 2 16:41 libOpenImageIO.so.1.5.24
lrwxrwxrwx 1 k.masson k.masson 26 May 4 17:53 libOpenImageIO_Util.so -> libOpenImageIO_Util.so.1.5
lrwxrwxrwx 1 k.masson k.masson 29 May 4 17:53 libOpenImageIO_Util.so.1.5 -> libOpenImageIO_Util.so.1.5.24
-rwxr-xr-x 1 k.masson k.masson 499288 May 2 16:41 libOpenImageIO_Util.so.1.5.24
drwxrwxr-x 3 k.masson k.masson 27 May 4 17:18 python2.7

文件似乎是正确的

 [k.masson@hauser24 lib64]$ file libOpenImageIO.so.1.5.24 
libOpenImageIO.so.1.5.24: ELF 64-bit LSB shared object, x86-64,
version 1 (GNU/Linux), dynamically linked,
BuildID[sha1]=4ba0f0a40dc1287cf1a74b2530d3d0837765868b, stripped

我不知道为什么我的链接器找不到我的库,我试过其他自定义库,问题是一样的你知道为什么吗?

最佳答案

I don't know why my linker doesn't find my library,

因为你没有要求它这样做。这个命令:

ld -L<path to my lib dir> OpenImageIo

要求链接器将名为(字面意思)OpenImageIo 的文件链接到 a.out

您可能想这样做:

gcc -o your-exe foo.o bar.o -L<path-to-lib-dir> -lOpenImageIo

请注意,您应该几乎永远不要使用ld 来链接UNIX 系统上的任何内容。看这个answer由于某些原因。

关于c++ - GNU Linker 找不到本地共享库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37032903/

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