首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

./test:加载共享库时出错: libcpprest.so.2.8:无法打开共享目标文件:没有这样的文件或目录

./test:加载共享库时出错: libcpprest.so.2.8:无法打开共享目标文件:没有这样的文件或目录

这个错误提示表明在加载共享库时出现了问题,找不到名为libcpprest.so.2.8的共享目标文件。共享库是一组可被多个程序共享使用的代码和数据的集合,它们在运行时被动态加载到内存中。

针对这个错误,可以采取以下几个步骤进行排查和解决:

  1. 确认共享库是否存在:首先,检查系统中是否存在名为libcpprest.so.2.8的共享库文件。可以使用以下命令进行查找:
  2. 确认共享库是否存在:首先,检查系统中是否存在名为libcpprest.so.2.8的共享库文件。可以使用以下命令进行查找:
  3. 如果找不到该文件,可能是因为共享库未正确安装或路径配置有误。
  4. 确认共享库路径配置:如果共享库存在于系统中,需要确认系统的共享库路径是否包含该库的路径。可以通过以下命令查看共享库路径配置:
  5. 确认共享库路径配置:如果共享库存在于系统中,需要确认系统的共享库路径是否包含该库的路径。可以通过以下命令查看共享库路径配置:
  6. 如果没有包含该库的路径,可以通过以下方式将其添加到共享库路径中:
  7. 如果没有包含该库的路径,可以通过以下方式将其添加到共享库路径中:
  8. 其中,/path/to/libcpprest.so.2.8需要替换为实际的共享库文件路径。
  9. 检查依赖关系:共享库可能依赖其他库文件,缺少依赖库也会导致加载错误。可以使用以下命令检查共享库的依赖关系:
  10. 检查依赖关系:共享库可能依赖其他库文件,缺少依赖库也会导致加载错误。可以使用以下命令检查共享库的依赖关系:
  11. 如果有缺失的依赖库,需要安装相应的依赖库。
  12. 更新或重新安装共享库:如果以上步骤都没有解决问题,可以尝试更新或重新安装libcpprest.so.2.8共享库。可以参考官方文档或相关资源获取最新版本的共享库,并按照其提供的安装步骤进行操作。

总结起来,解决"./test:加载共享库时出错: libcpprest.so.2.8:无法打开共享目标文件:没有这样的文件或目录"错误的步骤包括确认共享库是否存在、检查共享库路径配置、检查依赖关系以及更新或重新安装共享库。希望以上信息能对您有所帮助。

相关搜索:rethinkdb:加载共享库时出错: libprotobuf.so.17:无法打开共享目标文件:没有这样的文件或目录加载共享库时出错,没有这样的文件或目录加载共享库时出错: libPocoNet.so.60:无法打开共享对象文件:没有这样的文件或目录QBS .../install-root/MyProject:加载共享库时出错: foobar.so:无法打开共享目标文件:没有这样的文件或目录加载共享库时出错: libgtk-3.so.0:无法打开共享对象文件:没有这样的文件或目录正在获取“加载共享库时出错: libSDL2_mixer-2.0.so.0:无法打开共享目标文件:没有这样的文件或目录加载共享库时出现Gource命令错误:?:无法打开共享对象文件:没有这样的文件或目录../main:加载共享库时出错: libopencv_highgui.so.4.0:无法打开共享对象文件:没有这样的文件或目录获取cp:加载共享库时出错: libc.so.6:无法打开共享目标文件:没有此类文件或目录错误加载共享库时出错: libpq.so.5:无法打开共享对象文件:运行rust app时没有这样的文件或目录ffmpeg:加载共享库时出错: libmp3lame.so.0:无法打开共享对象文件:没有这样的文件或目录节点:加载共享库时出错:libitui18n.so.62:无法打开共享对象文件:没有这样的文件或目录paraview:加载共享库时出错: libQt5Core.so.5:无法打开共享对象文件:没有这样的文件或目录mongosql无法在Red Hat 8上启动:“加载共享库时出错: libssl.so.10:无法打开共享目标文件:没有这样的文件或目录”Tensorflow共享库错误;ImportError: libcuda.so.1:无法打开共享目标文件:没有这样的文件或目录加载共享库时出错: libhdf5.so.101:无法打开共享目标文件加载共享库时出现Linux错误:无法打开共享对象文件:没有此类文件或目录如何解决;tesseract:加载共享库时出错: libpng12.so.0:无法打开共享对象文件:没有这样的文件或目录?ImportError: libGL.so.1:无法打开共享目标文件:没有这样的文件或目录无法打开共享对象文件: 没有那个文件或目录
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【一站式解惑】Linux中.a、.so和.o文件以及-I,-L,LIBRARY_PATH,LD_LIBRARY_PATH等

所谓动态就是exe运行的时候依赖于dll里面提供的功能,没有这个dll,你的exe无法运行。 lib,dll,exe都算是最终的目标文件,是最终产物。而c/c++属于源代码。...(4)安装: 拷贝共享库文件到指定的标准的目录,然后运行ldconfig。如果没有权限这样做,那么就只好通过修改环境变量来实现这些函数库的使用了。方法不再说了,很复杂。...-lmyhello 或 [zhixa@ess ~test]$ gcc main.c libmyhello.so -o hello 这里不会出错(没有libmyhello.so的话,会出错),但是接下来....那么在产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意位置,都可以正确的执行。这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。...通常这样做就可以解决库无法链接的问题了。 静态库链接时搜索路径顺序 1. ld(GNU linker)会去找GCC命令中的参数-L。

5.5K52

深入浅出链接库 | 静态库与动态库

链接库就是指将库文件编译后打包为一个二进制文件,这些二进制文件会在程序调用的时候加载到内存中。实际上,一个或多个源文件编译为目标文件后,这个文件中所引用的外部的符号需要通过链接来找到这部分缺失的地址。...动态库是在运行时加载到内存的共享库段,这样,如果很多程序都要用到静态库的时候,就会节省大量内存,因为它不像静态库那样加载到代码段,而是是在运行时载入内存的共享库段,当多个程序要用到同一个动态库时,所有程序可以共享这个共享库段的指令和数据...动态链接的实现是这样的,在编译时首先由静态链接器将所有的目标文件链接为一个可执行文件,等到程序运行时会将要用到的动态库加载到内存的共享库段,由动态链接器完成可执行文件和动态库文件的链接工作,可以理解为按需载入内存...GCC 编译器在生成可执行文件时,默认会优先使用动态链接库完成链接,如果当前系统环境中没有程序文件所需要的动态链接库,GCC 便会选择静态链接库进行静态链接。如果两种库文件都没有找到,则链接失败。.../header/ (2)“加载共享库出错”的解决方法 这个是时候,虽然我们已经生成了可执行文件,但是当我们运行可执行文件的时候,可能会出现这样的错误 我们可以通过命令 ldd 来查看一下可执行文件的链接情况

62510
  • CSAPP---第七章-链接

    ,这是对内存的极大浪费 共享库是一个目标模块,在运行或加载时,可以加载到任意的内存地址,并和一个在内存中的程序链接起来。...而由于是共享的,每个动态链接库代码段的内容是完全一样的(代码段可以通过内存映射完成多进程间共享),这样只能在数据段做手脚了,因为数据段不是只读的,无法共享。...共享目标文件(共享库)是在运行时由动态链接器链接和加载的,或者隐含地在调用程序被加载和开始执行时,或者根据需要在程序调用 dlopen 库的函数时。...链接器还可能生成部分链接的可执行目标文件,这样的文件中有对定义在共享库中的例程和数据的未解析的引用。...在加载时,加载器将部分链接的可执行文件映射到内存,然后调用动态链接器,它通过加载共享库和重定位程序中的引用来完成链接任务。

    92110

    linux下的 lib文件的学习思考

    那么在正常的相同虚机的机器查看下,再和出错的虚机比对下,发现少了2个库文件 ? 挂载系统光盘或从正常的虚机上把这个两个文件拷贝过来,放到lib64下就可以了 再试正常了 ?...Linux下的库文件分为共享库和静态库两大类,它们两者的差别仅在程序执行时所需的代码是在运行时动态加载的,还是在编译时静态加载的。 ...Linux的库一般在/lib 或/usr/lib 目 录下,如果是64位的系统则会有lib64目录。lib是库(Library)的英文缩写,它主要存放系统的链接库文件,没有该目录则系统就无法正常运行。...第三个特点文件名是.so的库为共享库(共享库是在运行的时候动态加载的 )。默认情况下,GCC在链接时优先使用共享库,只有当共享库不存在时才考虑使用静态库。 ...-p或--print-cache 让ldconfig打印出当前缓存文件所保存的所有共享库的名字。  -r ROOT 改变应用程序的根目录为ROOT。

    2.7K20

    linux动态库和静态库

    文件列表--> /lib/,/usr/lib 目录找到库文件后将其载入内存 如: export LD_LIBRARY_PATH=’pwd’ 将当前文件目录添加为共享目录。...通常这样做就可以解决库无法链接的问题了。 二、静态库链接时搜索路径的顺序: 1. ld会去找gcc/g++命令中的参数-L; 2....到这里,为什么会有库的依赖问题已经得到解答:  因为libchild.a依赖于libbase.a,但是libbase.a在libchild.a的左边,导致libbase.a中的目标文件(*.o)根本就没有被加载到...O_RDONLY|O_LARGEFILE) = 3 open("libold.so", O_WRONLY|O_TRUNC|O_LARGEFILE) = 4 在 cp 使用“O_WRONLY|O_TRUNC” 打开目标文件时...对于 so 文件,它是靠 ld.so 加载的,而ld.so毕竟也是用户态程序,没有权利去锁定inode,也不应与内核的文件系统底层实现耦合。

    12.4K20

    Linux库详解

    库文件无法直接执行,因为它的源代码中没有入口主函数,而只是一些函数模块的定义和实现,所以无法直接执行。...换句话说,它只是没有任何版本号的soname Linux系统上这样做的目的主要是系统中允许不同版本的库文件共存,一般在命名库文件的时候通常与soname相同 如何装载共享库 ldconfig命令,在Linux...这样装载器就会首先搜索该变量的目录,然后搜索默认目录。 传参数,如果您不想设置LD_LIBRARY_PATH环境变量,在 Linux 上可以直接调用程序加载器并向其传递参数。...而不是像共享库一样在程序启动的时候加载。在Linux中,动态库的文件格式跟共享库没有区别,主要区别在于共享库是程序启动时加载,而动态加载库是运行的过程中加载。...有了动态库,程序的升级会相对比较简单,只需要替换动态库的文件,而不需要替换可执行文件 动态加载库 动态库的文件格式跟共享库没有区别,主要区别在于共享库是程序启动时加载,而动态加载库是运行的过程中加载。

    2K40

    Linux下库文件制作方法详解

    参数 含义 -c 激活预处理、编译和汇编,把程序做成目标文件(.o文件) -g 在编译的时候产生调试信息 -Wall 生成警告信息 -l 指定链接时需要的动态库。...目标文件需要创建成位置无关码,概念上就是在可执行程序装载它们的时候,它们可以放在可执行程序的内存里的任何地方 -shared 生成动态链接库 我们编写两个函数并将文件制作成库文件,用下面相同的代码分别制作静态库和共享库...:$LD_LIBRARY_PATH 3.另外还可以在/etc/ld.so.conf文件里加入我们生成的库的目录,然后/sbin/ldconfig /etc/ld.so.conf是非常重要的一个目录,里面存放的是链接器和加载器搜索共享库时要检查的目录...,默认是从/usr/lib /lib中读取的,所以想要顺利运行,我们也可以把我们库的目录加入到这个文件中并执行/sbin/ldconfig 动态加载库 上面共享库的调用属于动态链接方法,此外我们还可以动态加载...动态加载需要用到系统API函数 接口 描述 dlopen 打开对象文件,可被程序访问 dlsym 获取执行了dlopen函数的对象文件中的符号的地址 dlerror 返回上一次出现的错误 dlclose

    2.1K30

    【Linux】基础IO --- 软硬链接、acm时间、动静态库制作、动静态链接、动静态库加载原理…

    edge属性中有一个目标,这个目标实际上就相当于软链接中指向的目标文件,我们能够双击快捷方式打开Microsoft Edge的原因就是,目标文件实际上就是Microsoft Edge的可执行程序。...但以前写代码的时候,我们从来没有指明过库名称,那是因为当时我们没有使用过第三方库,使用的都是C或C++语言提供的标准库,所以gcc或g++默认就可以确定代码需要链接的是哪一个库文件,但今天我们连接的库不是标准库...在编译时,gcc知道了库文件的路径和名称,但是在程序运行时就和gcc没关系了,动态库是在程序运行期间进行加载的,而在运行期间,OS和shell不知道我们的库在哪里,因为我们的库不在系统路径下,所以OS无法找到...但是当我们下一次登录xshell时,环境变量中我们刚刚添加的路径会默认自动消失,所以在下一次登录时,mymath就又无法正常运行了,还会报找不到库文件的错误,如果想让路径永久生效,就需要改环境变量的配置文件...静态库不需要加载,在加载程序也就是编译链接时,系统就会将静态库的代码拷贝到可执行程序的代码段里面,因为可执行程序中没有栈和堆段,只有代码段、数据段(可以细分为.data和.rodata段)和BSS段。

    3.7K30

    Linux共享库、静态库、动态库详解

    1、静态函数库,是在程序执行前就加入到目标程序中去了 ; 2、动态函数库同共享函数库是一个东西(在linux上叫共享对象库, 文件后缀是.so ,windows上叫动态加载函数库, 文件后缀是.dll)...文件系统中函数库文件的位置 共享函数库文件必须放在一些特定的目录里,这样通过系统的环境变量设置,应用程序才能正确的使用这些函数库。...共享库是程序启动时加载的库。...此预加载文件通常用于紧急补丁; 分发通常不会在交付时包含这样的文件。 在程序启动时搜索所有这些目录将是非常低效的,因此实际使用了缓存安排。...生成的库将工作,但这些操作使调试器大多没有用。 使用-fPIC或-fpic生成代码。是否使用-fPIC或-fpic生成代码是依赖于目标的。

    8.9K11

    SSH 服务器、NFS 服务器、TFTP 服务器详解及测试

    NFS 无疑是最好的选择。通过 NFS 服务,主机可以将自己系统中某个指定目录通过网络共享给目标机(和 Windows 的文件网络共享类似)。...目标机可以直接运行存放于 Linux 主机共享目录下的程序。这样调试程序时十分方便。.../mnt -o nolock 如果指令运行没有出错,则 NFS 挂载成功,在主机的 /mnt 目录下应该可以看到 /nfsroot 目录下的内容(即之前创建的 NFS_Test 目录)。...此外,在 mount 与 umount(解除挂载)操作时,用户的当前路径不能是操作的目标路径。...例如下面两条指令就是错误的,用户当前所处的路径与要 mount(或 umount)的目标路径相同: pwd mount -t nfs 192.168.25.25:/nfsroot /mnt -o nolock

    54030

    LD_LIBRARY_PATH和LIBRARY_PATH的区别

    目标文件(Executable and Linkable Format) 可重定位(Relocatable)文件:由编译器和汇编器生成,可以与其他可重定位目标文件合并创建一个可执行或共享的目标文件; 共享...(Shared)目标文件:一类特殊的可重定位目标文件,可以在链接(静态共享库)时加入目标文件或加载时或运行时(动态共享库)被动态的加载到内存并执行; 可执行(Executable)文件:由链接器生成,可以直接通过加载器加载到内存中充当进程执行的文件...静态库的优点在于: 程序员不需要显式的指定所有需要链接的目标模块,因为指定是一个耗时且容易出错的过程; 链接时,连接程序只从静态库中拷贝被程序引用的目标模块,这样就减小了可执行文件在磁盘和内存中的大小。...动态链接(加载、运行时) 在此种方式下,函数的定义在动态链接库或共享对象的目标文件中。在编译的链接阶段,动态链接库只提供符号表和其他少量信息用于保证所有符号引用都有定义,保证编译顺利通过。...,经常会需要使用某个或某些动态链接库,为了保证程序的可移植性,可以先将这些编译好的动态链接库放在自己指定的目录下,然后按照上述方式将这些目录加入到LD_LIBRARY_PATH环境变量中,这样自己的程序就可以动态链接后加载库文件运行了

    1.3K40

    VB6 开发生成的exe文件无法访问局域网网络映射盘或共享目录中的文件或文件夹的解决办法

    VB6 开发生成的exe文件无法访问局域网网络映射盘或共享目录中的文件或文件夹的解决办法(网上几乎找不到解决这个问题的答案,特别是解决办法中的注意事项。...折腾了好几天才解决)一、问题症状在Win10 或 Win11 64位 环境 使用VB6生成的exe访问,局域网网络映射盘或共享目录中的文件或文件夹,发现出现 文件名或文件与出错或错误 : 76 path...not found中错误 :52 bad file name or number或这样的错误提示: Run-time error '438': Object doesn't support this...:添加DWORD值 :EnableLinkedConnections,设置值为1这样就可以了 (需要重启一下电脑)注意事项:千万注意,生成的exe文件名不能为Update.exe ,系统会自动在这个exe...执行文件的图标加上盾牌,然后这个执行文件 ,就无法访问局域网的共享目录文件了。

    10710

    静态链接库和动态链接库的区别

    动态库而言:某个程序在运行中要调用某个动态链接库函数的时候,操作系统首先会查看所有正在运行的程序,看在内存里是否已有此库函数的拷贝了。如果有,则让其共享那一个拷贝;只有没有才链接载入。...只需要在使用到这些公用函数的源程序中包含这些公用函数的原型声明,然后在用gcc命令生成目标文件时指明静态库名(是mymath 而不是libmymath.a ),gcc将会从静态库中将公用函数连接到目标文件中...动态库的搜索路径搜索的先后顺序是:1.编译目标代码时指定的动态库搜索路径;2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;3.配置文件/etc/ld.so.conf中指定的动态库搜索路径...); //my_fini为自定义的析构函数名在编译共享库时,不能使用"-nonstartfiles"或"-nostdlib"选项,否则构建与析构函数将不能正常执行(除非你采取一定措施)。...在使用时应包含的头文件Winbase.h(include Windows.h)dlfcn.h5、特殊情况我们回过头看看,发现使用静态库和隐式方式使用动态库时编译成目标程序使用的gcc命令完全一样,那当静态库和动态库同名时

    8.4K21

    内网渗透基石篇--域内横向移动分析及防御

    利用这个连接,不仅可以访问,目录机器中的文件,进行上传,下载等操作,还可以在目标机器上运行其他命令,以获取目标机器的目录结构、用户列表等信息。...1.ipc$的利用条件 开启了139、445端口 管理员开启了默认共享 2.ipc$连接失败的原因 用户名或密码错误 目标没用有打开ipc$默认共享 不能成功连接目标的139、445端口 命令输入错误...WMi,smbexec、schtasks、at,也无法访问远程主机的文件共享等。...随后WMI会建立一个共享文件夹,用于远程读取命令执行结果。 当用户输入命令时,WMI创建进程执行该命令,然后把结果输出到文件,这个文件位于之前创建的共享文件夹中。...最后,通过FSO组件访问远程共享文件夹中的结果文件,将结果输出。当结果读取完成时,调用WMI执行命令删除结果文件。最后当WMIEXEC退出时,删除文件共享。

    2.9K62

    如何使用aDLL自动识别DLL劫持漏洞

    主要是因为Windows的资源共享机制。为了尽可能多地安排资源共享,微软建议多个应用程序共享的任何模块应该放在Windows的系统目录中,如kernel32.dll,这样能够方便找到。...但是随着时间的推移,安装程序会用旧文件或者未向后兼容的新文件来替换系统目录下的文件,这样会使一些其他的应用程序无法正确执行,因此,微软改变了策略,建议应用程序将所有文件放到自己的目录中去,而不要去碰系统目录下的任何东西...为了提供这样的功能,在Window2000开始,微软加了一个特性,强制操作系统的加载程序首先从应用程序目录中加载模块,只有当加载程序无法在应用程序目录中找到文件,才搜索其他目录。...我们建议广大用户使用版本架构(32位或64位)对应的版本来分析目标可执行文件。...aDLL将会搜索嵌入在二进制文件中的清单列表,如果清单列表作为外部文件存在,aDLL将无法找到该清单列表。 -w:定义在运行时搜索加载的DLL时可执行进程保持打开状态的秒数。默认时间为20秒。

    1.5K20

    静态库和动态库制作

    静态库在文件中静态展开,所以有多少文件就展开多少次,非常吃内存,100M 展开 100 次,就是 10G,但是这样的好处就是静态加载的速度快。...使用动态库会将动态库加载到内存,10 个文件也只需要加载一次,然后这些文件用到库的时候临时去加载,速度慢一些,但是很省内存。.../test 出错原因分析: 连接器: 工作于链接阶段,工作时需要 -l 和 -L 动态链接器: 工作于程序运行阶段,工作时需要提供动态库所在目录位置 解决办法:指定动态库路径并使其生效,然后再执行文件.../test 当关闭终端,再次执行 test 时,又报错。 这是因为,环境变量是进程的概念,关闭终端之后再打开,是两个进程,环境变量发生了变化。.../test 四、对比 1、静态库优缺点 静态库的加载速度快 发布程序无需提供静态库,移植方便 消耗系统资源,浪费内存 更新、部署和发布麻烦 2、动态库优缺点 可以实现进程间的资源共享 更新、部署、发布简单

    24020

    Linux工具学习之【gccg++】

    ,就是在调用标准库中的函数,而这些标准库都在 /usr/include 这个目录中,这个文件就是 Linux 中的C语言动态库;除了 动态库 外还有 静态库 动态库 动态库 即通过 动态链接 的库,动态库...空间占用 共享动态库中的代码,空间占用少 拷贝代码会占用大量空间 加载速度 调用函数,加载速度慢 直接运行,加载速度快 小结 动态库 优点 可以实现不同进程间的资源共享 对于函数的升级只需要替换动态库文件...,不需要重新编译程序 可以控制是否加载动态库,不调用函数时就不加载 缺点 需要调用函数,加载速度较慢 程序运行需要依赖动态库 静态库 优点 所需函数直接拷贝至程序中,运行速度快 程序运行无需依赖库...,在原文件最近修改时间没有发生变化时,无法再执行任务,这背后的原因是方法是否执行会先判断生成的目标文件是否为最新,如果为最新,就不再执任务 举例:重复执行 make myfile 任务 $ make myfile...,使源目标文件不是最新时间 .PHONY 伪目标 .PHONY 是 Makefile 文件中的一个关键字,意为对某某对象生成伪目标,这样就能在不对源文件进行修改的情况下,重复执行任务了 //Makefile

    21620

    相册适配 Android 11 绕的那些弯路

    在搭载 Android 9(API 级别 28)或更低版本的设备上,只要其他应用具有相应的存储权限,任何应用都可以访问外部存储空间中的应用专属文件。...启用分区存储后,应用将无法访问属于其他应用的应用专属目录。...、请求 MANAGE_EXTERNAL_STORAGE 权限 这是一个有意思的权限,官方是这样说的 绝大多数需要共享存储空间访问权限的应用都可以遵循共享媒体文件和共享非媒体文件方面的最佳做法。...的库时,无法使用 File Api,造成了很多困难。...,确实找到了一小段不起眼的文字 使用直接文件路径和原生库访问文件 为了帮助您的应用更顺畅地使用第三方媒体库,Android 11 允许您使用除 MediaStore API 之外的 API 通过直接文件路径访问共享存储空间中的媒体文件

    1.7K30

    Linux静态库与动态库加载

    现在我们有这样的场景,有test1.c,test2.c,test3.c 最终经过上述的一系列处理转化成了test1.o,test2.o,test3.o,然后将这3个文件链接形成一个可执行程序a.out:...查看文件链接的标准库:ldd 这就是链接的c标准库,我们查一下这个文件libc.so.6: 没错,libc.so.6是一个软链接文件,我们再来查看一下这个目标文件的文件类型,使用file命令:  可以发现它是一个共享的库...gcc -fPIC -c test2.c test3.c -fPIC作用于编译阶段,告诉编译器产生与位置无关的代码,此时产生的代码中没有绝对地址,全部都使用相对地址,从而代码可以被加载器加载到内存的任意位置都可以正确的执行...这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。  ...打包:使用-shared选项将所有目标文件打包为动态库 与生成静态库不同的是,生成动态库时我们不必使用ar命令,我们只需使用gcc的-shared选项即可。

    18410
    领券