
/usr/numeca/fine90_2/LINUX/install/flex64/lmgrd
如果在当前目录下 可以通过 ./lmgrd 来执行
一、可执行文件/二进制文件依赖共享库ldd命令用来查看可执行文件依赖的共享库文件。
$ ldd --help
Usage: ldd [OPTION]... FILE...
--help print this help and exit
--version print version information and exit
-d, --data-relocs process data relocations
-r, --function-relocs process data and function relocations
-u, --unused print unused direct dependencies
-v, --verbose print all information
示例:
$ ldd helloworld
二、共享库依赖共享库关系
上面的ldd命令无法查看共享库的依赖关系,因为共享库本身并不是可执行文件,我们可以使用
objdump -x libhelloworld.so | grep NEEDED
其中,libhelloworld.so是你的库名称。
附:
readelf命令用于读取ELF Header信息
1.?提高linux中默认同时打开的最大文件数量(默认是1024)最便捷的方法是在/etc/profile文件中加入ulimit?-n?最大开启数量
但是这种方法无法从根本上查出什么原因导致java打开了这么多的文件
2.?java端调查开启文件多的原因
?Linux下查看进程打开了哪些文件
?lsof?-p??进程id????->??打开的具体文件
?lsof?-p??进程id|wc?-l???->??打开文件的数量
通过调查发现,java开了很多TYPE为FIFO(Linux中的管道)的文件,因此联想到有可能是java代码中的流没有正常关闭或者释放导致的。
而且Java在Linux下执行命令的时候需要用到Process类,这个类在使用后需要destroy()掉,否者也会导致文件数开启的过多
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)