linux/windows下查看目标文件.a/.lib的函数符号名称

本文介绍了在Linux和Windows环境下,使用各种工具(如objdump、nm、ar、dumpbin等)来查看目标文件(.o/.obj)中的符号列表及对象文件列表的方法。包括如何列出所有定义的符号以及如何显示所有对象文件的列表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、linux下

(1)、 objdump -t 查看对象文件所有的符号列表;例如

 

 objdump -t libtest.o

(2)、nm列出目标文件(.o)的符号清单;例如

nm -s filename.a/filename.o/a.out

(3)、列出所有定义的符号

nm --defined-only libname.a

 

(4)、显示所有对象文件(.o文件)的列表;例如

ar -t libname.a

 

2、windows下

(1)、 objdump -t 查看对象文件所有的符号列表;例如

 objdump -t libtest.obj

 

(2)、dumpbin -SYMBOLS 查看对象文件所有的符号列表

dumpbin -SYMBOLS deblock.obj


(3)、显示所有对象文件(.obj)的列表;例如

lib -list libname.lib


 

 

参考网址:https://my.oschina.net/alphajay/blog/7730

参考网址:http://bbs.youkuaiyun.com/topics/70373115

参考网址:http://www.cnblogs.com/kuangke/p/6155368.html           VS2012下X64平台嵌入汇编程序

==> Processing catkin package: 'daheng' ==> Building with env: '/home/bt/A06_ws/devel_isolated/coordSystem/env.sh' Makefile exists, skipping explicit cmake invocation... ==> make cmake_check_build_system in '/home/bt/A06_ws/build_isolated/daheng' ==> make -j20 -l20 in '/home/bt/A06_ws/build_isolated/daheng' [ 0%] Built target std_msgs_generate_messages_cpp [ 0%] Built target sensor_msgs_generate_messages_cpp [ 0%] Built target sensor_msgs_generate_messages_eus [ 0%] Built target sensor_msgs_generate_messages_nodejs [ 0%] Built target geometry_msgs_generate_messages_eus [ 0%] Built target rosgraph_msgs_generate_messages_py [ 0%] Built target geometry_msgs_generate_messages_lisp [ 0%] Built target geometry_msgs_generate_messages_nodejs [ 0%] Built target geometry_msgs_generate_messages_cpp [ 0%] Built target sensor_msgs_generate_messages_lisp [ 0%] Built target sensor_msgs_generate_messages_py [ 0%] Built target std_msgs_generate_messages_eus [ 0%] Built target geometry_msgs_generate_messages_py [ 0%] Built target std_msgs_generate_messages_py [ 0%] Built target std_msgs_generate_messages_nodejs [ 0%] Built target roscpp_generate_messages_cpp [ 0%] Built target roscpp_generate_messages_eus [ 0%] Built target std_msgs_generate_messages_lisp [ 0%] Built target roscpp_generate_messages_lisp [ 0%] Built target roscpp_generate_messages_py [ 0%] Built target roscpp_generate_messages_nodejs [ 0%] Built target rosgraph_msgs_generate_messages_eus [ 50%] Built target daheng [ 50%] Built target rosgraph_msgs_generate_messages_cpp [ 50%] Built target rosgraph_msgs_generate_messages_nodejs [ 50%] Built target rosgraph_msgs_generate_messages_lisp [ 75%] Linking CXX executable /home/bt/A06_ws/devel_isolated/daheng/lib/daheng/daheng_driver /usr/bin/ld: warning: libGCBase_gcc40_v2_3.so, needed by /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libGenApi_gcc40_v2_3.so, needed by /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so, not found (try using -rpath or -rpath-link) CMakeFiles/daheng_driver.dir/src/daheng_driver.cpp.o:在函数‘main’中: daheng_driver.cpp:(.text+0x669):对‘GXGetLibVersion’未定义的引用 daheng_driver.cpp:(.text+0x144e):对‘GXSetAcqusitionBufferNumber’未定义的引用 daheng_driver.cpp:(.text+0x1b08):对‘GXStreamOn’未定义的引用 daheng_driver.cpp:(.text+0x1c33):对‘GXDQBuf’未定义的引用 daheng_driver.cpp:(.text+0x20f8):对‘DxRaw8toRGB24’未定义的引用 daheng_driver.cpp:(.text+0x23d7):对‘GXQBuf’未定义的引用 daheng_driver.cpp:(.text+0x2440):对‘GXStreamOff’未定义的引用 CMakeFiles/daheng_driver.dir/src/daheng_driver.cpp.o:在函数‘PixelFormatConvert(GX_FRAME_BUFFER*)’中: daheng_driver.cpp:(.text+0x2bab):对‘DxRaw8toRGB24’未定义的引用 daheng_driver.cpp:(.text+0x2c0b):对‘DxRaw16toRaw8’未定义的引用 daheng_driver.cpp:(.text+0x2c74):对‘DxRaw8toRGB24’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CEventAdapterGeneric::CEventAdapterGeneric(GenApi::INodeMap*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::_npos()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::gcstring(char const*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CChunkAdapter::AttachNodeMap(GenApi::INodeMap*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::node_vector::node_vector()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CEventAdapter::DetachNodeMap()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::end() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::const_iterator::operator!=(GenICam::gcstring_vector::const_iterator const&) const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::GenericException::~GenericException()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::RuntimeException::RuntimeException(char const*, char const*, int, char const*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::~gcstring_vector()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘vtable for GenICam::GenericException’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::c_str() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::_InternalLoadDLL(GenICam::gcstring, GenICam::gcstring, GenICam::gcstring)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CEventAdapterGeneric::DeliverMessage(unsigned char const*, unsigned int, unsigned long)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::begin() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::Deregister(long)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::operator char const*() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CEventAdapterGeneric::~CEventAdapterGeneric()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CChunkAdapterGeneric::CChunkAdapterGeneric(GenApi::INodeMap*, long)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CChunkAdapter::UpdateBuffer(unsigned char*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CFeatureBag::LoadFromBag(GenApi::INodeMap*, bool, GenICam::gcstring_vector*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::AccessException::AccessException(char const*, char const*, int, char const*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::getline(std::istream&, GenICam::gcstring&)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘typeinfo for GenICam::GenericException’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::node_vector::~node_vector()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::clear()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::find(GenICam::gcstring const&, unsigned long) const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::~gcstring()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CChunkAdapter::DetachNodeMap()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::GenericException::GetSourceLine() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::at(unsigned long)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::const_iterator::operator*() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::GenericException::GetSourceFileName() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::node_vector::at(unsigned long)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::gcstring_vector()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::operator==(GenICam::gcstring const&) const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::GenericException::what() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::GenericException::GetDescription() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CFeatureBag::StoreToBag(GenApi::INodeMap*, int)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::gcstring()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::GenericException::~GenericException()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CastToIDestroy(GenApi::INodeMap*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::node_vector::size() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CChunkAdapter::DetachBuffer()’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::push_back(GenICam::gcstring const&)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::operator=(GenICam::gcstring const&)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘vtable for GenApi::CFeatureBag’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::const_iterator::operator++(int)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring_vector::size() const’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenApi::CastToINodeMapDyn(GenApi::INodeMap*)’未定义的引用 /usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/libgxiapi.so:对‘GenICam::gcstring::gcstring(GenICam::gcstring const&)’未定义的引用 collect2: error: ld returned 1 exit status CMakeFiles/daheng_driver.dir/build.make:131: recipe for target '/home/bt/A06_ws/devel_isolated/daheng/lib/daheng/daheng_driver' failed make[2]: *** [/home/bt/A06_ws/devel_isolated/daheng/lib/daheng/daheng_driver] Error 1 CMakeFiles/Makefile2:1167: recipe for target 'CMakeFiles/daheng_driver.dir/all' failed make[1]: *** [CMakeFiles/daheng_driver.dir/all] Error 2 Makefile:145: recipe for target 'all' failed make: *** [all] Error 2 <== Failed to process package 'daheng': Command '['/home/bt/A06_ws/devel_isolated/coordSystem/env.sh', 'make', '-j20', '-l20']' returned non-zero exit status 2 Reproduce this error by running: ==> cd /home/bt/A06_ws/build_isolated/daheng && /home/bt/A06_ws/devel_isolated/coordSystem/env.sh make -j20 -l20 Command failed, exiting.
最新发布
06-03
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值