获取可执行文件的机器信息

问题描述 投票:1回答:1

我在python3项目内的文件夹中具有针对不同体系结构(x86_64,arm32等)编译的,具有不同名称的不同c ++可执行文件。当我在相应的体系结构上运行项目时,我将使用其中之一。目前,我在各种架构中运行之前更改了可执行文件的路径。有人可以建议我去:

  • 查找这些可执行文件的机器体系结构信息(无论是arm32,x86等)还是获取该可执行文件针对运行代码或在其中运行的体系结构进行编译这些可执行文件中的每一个是哪个机器或体系结构已完成。

我试图用python检查平台库,但没有得到任何有效的解决方案。如何在Python3中实现以上任何一项?

python python-3.x architecture executable platform
1个回答
0
投票

要找到当前平台的体系结构,您需要uname库中的uname

platform

EDIT:查找已编译二进制文件的目标体系结构更加困难。总是有一个OS调用来告诉您二进制文件是否已编译为在该OS的特定体系结构上运行,但是要找到任意二进制文件的编译目标并不容易。您可以根据自己所处的平台执行以下操作:

这是来自macOS的示例:

How do I determine the architecture of an executable binary on Windows 10
© www.soinside.com 2019 - 2024. All rights reserved.