首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在LINUX中确定.a库/档案库是32位还是64位?

在LINUX中确定.a库/档案库是32位还是64位?
EN

Stack Overflow用户
提问于 2011-04-14 23:00:46
回答 5查看 89.4K关注 0票数 88

我们在Linux中发布了64位和32位版本的静态库。在对客户进行故障排除时,我希望我的诊断外壳脚本通过检查.a存档文件来确定它是32位还是64位,从而快速消除该问题。我想到的方法不是很优雅:

  1. 提取一个文件成员并请求“.o”命令(例如,ELF 32位等)
  2. 开始包含一个虚拟成员,编码为指示,例如32bit.o/64bit.o,并使用"ar -t“检查

我尝试过“string xyz.a | grep 32”,但这在版本上不能很好地工作。这不是一个令人心碎的问题,但如果你知道一个优雅的解决方案,我很想知道。

EN

回答 5

Stack Overflow用户

发布于 2011-04-15 09:26:02

objdump似乎是最好的方式:

objdump -f libfoo.a | grep ^architecture
票数 125
EN

Stack Overflow用户

发布于 2012-01-18 19:11:01

最简单的方法是使用file命令。

$ file <.so file or .a file>
票数 36
EN

Stack Overflow用户

发布于 2013-04-25 22:25:17

只需使用文件命令即可;即file library.so

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5665228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档