Linux下ld搜索问题:ld: cannot find -l"XX"

ld命令行工具(链接库的一个工具)的搜索路径是-L指定的,库名是-l指定的。

比如: ld -L[dir] -l[mylib] --verbose

以上我用可视化的方法显示ld的搜索路径,其结果是居然在mylib,也就是库文件名中自动加入了前缀lib,导致找不到我的mylib,因为我的lib名字没有加入lib的前缀。所以要把库名改了,加上lib前缀。我操,ld这样的设计目的是什么?加入前缀是为了减少冲突概率么???类似很多第三方库的API也是有自己的前缀,比如openGL就有gl的前缀,就是为了减少冲突。

ld -L/home/a/dls/dls/trunk/dlf/pc/lib -lkp_wdapi1160_gcc_v3 --verbose

attempt to open /home/a/dls/dls/trunk/dlf/pc/lib/libkp_wdapi1160_gcc_v3.so failed
attempt to open /home/a/dls/dls/trunk/dlf/pc/lib/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/x86_64-linux-gnu/lib64/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/x86_64-linux-gnu/lib64/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/local/lib/x86_64-linux-gnu/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/local/lib/x86_64-linux-gnu/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/local/lib64/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/local/lib64/libkp_wdapi1160_gcc_v3.a failed
attempt to open /lib/x86_64-linux-gnu/libkp_wdapi1160_gcc_v3.so failed
attempt to open /lib/x86_64-linux-gnu/libkp_wdapi1160_gcc_v3.a failed
attempt to open /lib64/libkp_wdapi1160_gcc_v3.so failed
attempt to open /lib64/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/lib/x86_64-linux-gnu/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/lib/x86_64-linux-gnu/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/lib64/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/lib64/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/local/lib/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/local/lib/libkp_wdapi1160_gcc_v3.a failed
attempt to open /lib/libkp_wdapi1160_gcc_v3.so failed
attempt to open /lib/libkp_wdapi1160_gcc_v3.a failed
attempt to open /usr/lib/libkp_wdapi1160_gcc_v3.so failed
attempt to open /usr/lib/libkp_wdapi1160_gcc_v3.a failed
ld: cannot find -lkp_wdapi1160_gcc_v3

reference:

http://stackoverflow.com/questions/16710047/usr-bin-ld-cannot-find-lnameofthelibrary

时间: 2024-09-06 15:14:03

Linux下ld搜索问题:ld: cannot find -l"XX"的相关文章

Linux下文件搜索、查找、查看命令

Linux下文件搜索.查找.查看命令 1.最强大的搜索命令:find 查找各种文件的命令 2.在文件资料中查找文件:locate 3.搜索命令所在的目录及别名信息:which 4.搜索命令所在的目录及帮助文档路径:whereis5.在文件中搜寻字符串匹配的行并输出:grep6.分页显示一个文件或任何输出结果:more7.分页显示一个文件并且可以回头:less8.指定显示前多少行文件内容:head9.指定显示文件后多少行内容:tail10.查看一个文件:cat11.查看文件内容多少字符多少行多少字

Linux下文本搜索工具grep命令使用入门

grep命令入门 如果想通过使用grep命令来实现理想化的文本搜索,对正则表达式的了解是比不可少的.文献1对正则表达式语法做了一个简单的介绍,文献2提供了一个简单的入门.码农也可以自己google一下其他的参考资料.下面就grep命令的使用做个入门级的介绍. 1.1 grep命令的变种 linux下除了grep命令可以完成文本搜索外,还存在egrep,fgrep,rgrep三个命令.这三个命令都是由grep加上一些控制参数演变而来,如egrep=grep -E, fgrep=grep -F, r

Linux下文本搜索-GREP篇

Grep应该是所有linux下开发人员天天都会使用的一个搜索工具,以其简单易用.功能强大赢大广大人们的喜爱,熟练使用Grep可以大大提高工具效率,下面总结一下本人在工作在使用上的一些技巧. 一.基本用法 grep [options] PATTERN [FILE...] 常见的options有几下几种: -a 以文本文件方式搜索 -c 显示满足PATTERN 的个数 -i  忽略大小写 -n 显示匹配的行号 -v 反向选择,即查找不满足PATTERN 的行 -b 显示搜索字符在匹配行出现的首位置

Linux下的搜索查找命令的详解(find)

4.find Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下.即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限. 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间 4.1.命令格式: find pathname -opt

Linux下的搜索查找命令的详解(locate)

3.locate locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案.其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了.在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行. 3.1.命令格式: Locate [选择参数] [样式] 3.2.命令功能: locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemo

linux下文件搜索

常用: grep -nr "关键字" 搜索当前目录下所有匹配关键字的文件 grep -nr "关键字" *php  搜索当前目录下所有匹配关键字的php文件 find  -name '*.php'|xargs grep 'Hello!'    搜索当前目录下所有匹配关键字"Hello!"的php文件 替换文件内容 sed -i "s/原字符串/要替换的字符串/g" `grep "原字符串" -rl 路径`

Linux下的搜索查找命令的详解(which)

我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:  which  查看可执行文件的位置. whereis 查看文件的位置.  locate   配合数据库查看文件位置. find   实际搜寻硬盘查询文件名称. 1.which  which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果.也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令. 1.1.命令格式: which 可

Linux下的搜索命令grep(转)

一.简介 grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. 通常grep会结合管道|来使用,比如把上一个命令得到的结果通过管道|传递到grep进行筛选 二.选项 -a 不要忽略二进制数据. -A<显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容. -b 在显示符合范本样式的那一行之外,并

Linux下文本搜索-AWK篇

一.AWK简介 和GREP相比,AWK相对陌生一些,但它的功能更强大,处理起来更灵活,适合处理基于列结构化的文本数据,因为它可以对行数据进行细致的处理,如按特定字符将文本切分成多个字段,进而对各个字段进行下一步的片.它还支持C语法,可以当成脚本语言来使用. 二.基本语法 awk 用法:awk ' pattern {action} '  files ARGC 命令行变元个数 ARGV 命令行变元数组 FILENAME 当前输入文件名 FNR 当前文件中的记录号 FS 输入域分隔符,默认为一个空格

linux下的7种文件类型[ls -l]

普通文件(-)我们用 ls -lh 来查看某个文件的属性,可以看到有类似 -rw-r--r-- ,值得注意的是第一个符号是 - ,这样的文件在Linux中就是普通文件.这些文件一般是用一些相关的应用程序创建,比如图像工具.文档工具.归档工具... .... 或 cp工具等.这类文件的删除方式是用rm 命令 目录(d) 当我们在某个目录下执行,看到有类似 drwxr-xr-x ,这样的文件就是目录,目录在Linux是一个比较特殊的文件.注意它的第一个字符是d.创建目录的命令可以用 mkdir 命令