区分Windows上运行的Python应用程序和其他操作系统(通常是Linux)的常见检查是使用条件: if sys.platform == 'win32': … 但是我想知道今天64位Python在去年被广泛使用的时候是否安全呢? 32真的意味着32位,或者基本上是指Win32 API? 如果有可能有一天sys.platform为“win64”也许这样的条件会更普遍? if sys.platform.startswith('win'): … 还有另一种检测Windows的方法我知道: if os.name == 'nt': … 但是我从来没有在其他的代码中看到后者的使用。 那么最好的方法是什么? UPD :如果可以,我想避免使用额外的库。 要求安装额外的库来检查我是不是在Windows工作,可能会让Linux用户烦恼。
我已经把代码分解成最小的声明: Dim cn As System.Data.SQLite.SQLiteConnection 从WinForm应用程序中调用代码时出现以下错误: System.BadImageFormatException:无法加载文件或程序集“System.Data.SQLite,版本= 1.0.65.0,文化=中性,PublicKeyToken = db937bc2d44ff139”或其依赖项之一。 试图加载格式不正确的程序。 文件名:'System.Data.SQLite,Version = 1.0.65.0,Culture = neutral,PublicKeyToken = db937bc2d44ff139' 然而,从MSunit testing调用相同的代码我没有得到错误,加上完整的代码集按预期工作。
对不起,有很多类似的问题,但我发现谷歌searchCMake查询总是产生类似,但不是相同的场景,冲突CMake命令等! 我需要强制我的项目构build32位的二进制文件,因为我必须链接到一个只有32位的库。 我根据如下错误消息来诊断: /usr/bin/ld: i386 architecture of input file `*external-32bit-lib*' is incompatible with i386:x86-64 output 从我所收集到的,我应该使用: set (CMAKE_CXX_FLAGS "-m32") 这确实改变了事情 – 我现在得到了几个错误,如: /usr/bin/ld: i386 architecture of input file `*project-output-lib*' is incompatible with i386:x86-64 output 而且对于外部库也是一样的错误。 我认为这是因为-m32使gcc生成32位二进制文件,但ld仍然在尝试64位输出? 进一步谷歌search这个问题并没有成功,所以如果任何人都可以certificate我是正确的,并给出了正确的方式做到这一点,我将不胜感激! 非常感谢!
当我从Mac上的bash shell运行以下代码时: $ file /usr/bin/python 我得到以下三行: /usr/bin/python (for architecture x86_64): Mach-O 64-bit executable x86_64 /usr/bin/python (for architecture i386): Mach-O executable i386 /usr/bin/python (for architecture ppc7400): Mach-O executable ppc 这似乎表明,Python已经被编译为所有三种架构或类似的东西? 我相信,基于我在尝试安装MySQL时遇到的一些错误,我使用的版本是64位版本。 所以有两个问题: 我怎么知道的? 我怎么能改变Python为32位呢? 比使用不同的编译设置重新编译的东西要厉害吗? 为什么arch从一个bash shell返回i386这似乎表明我不是在“64位模式”,当我知道基于我的处理器我正在运行一个64位的Mac? 对不起,这些可能都是新手的问题,整个32/64位的东西让我感到沮丧,我敢肯定有一些命令/工具可以使这个更简单。
嗨,我有麻烦编译,我得到这个错误: Gradle:执行失败的任务':ElectronicComponentInventorySearch:mergeDebugResources'。 java.io.IOException:无法运行程序“/ opt / android-studio / sdk / build-tools / android- 4.2.2 / aapt”:error = 2,没有这样的文件或目录 当我使用定位:/opt/android-studio/sdk/build-tools/android-4.2.2/aapt 在我尝试任何事情之前,我确保将整个android-studio目录切换到我的帐户,并将权限设置为775。 这是怎么回事?
现在Office也进来了一个64位安装,在registry中,你会发现安装的Office版本是32位还是64位?
可能重复: 如何在迁移到Delphi 2010和Unicode时为64位做准备 因为我相信64位的 Delphi编译器很快就会出现,所以我很好奇,如果有人知道现在使用64位编译器,现在32位的程序是什么样的编译和工作,没有任何改变。 如果有一个普遍的规则,我们应该在我们的旧程序中系统地做出什么样的改变来编译为64位 ? 当64位编译器突然在这里的时候准备好是很好的… 任何build议将不胜感激。
我们在Linux中分发一个64位和32位版本的静态库。 在对客户进行故障排除时,我希望我的诊断shell脚本通过检查.a存档文件来确定是32位还是64位,从而快速消除此问题。 发生在我身上的方法不够优雅: 提取.o成员并询问“文件”命令(例如,ELF 32位等) 开始包括一个虚拟成员编码来表示,例如32bit.o / 64bit.o并使用“ar -t”来检查 我已经尝试过“stringxyz.a | grep 32”,但是这不适用于版本。 不是一个令人心碎的问题,但如果你知道一个优雅的解决scheme,我想知道。
我试图衡量在访问值types和引用types列表时使用for和foreach的区别。 我使用下面的类来进行分析。 public static class Benchmarker { public static void Profile(string description, int iterations, Action func) { Console.Write(description); // Warm up func(); Stopwatch watch = new Stopwatch(); // Clean up GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); watch.Start(); for (int i = 0; i < iterations; i++) { func(); } watch.Stop(); Console.WriteLine(" average time: {0} ms", watch.Elapsed.TotalMilliseconds / iterations); […]
我有一个win7 64位安装。 我必须使用Python 64位? 无论如何,32位和64位Python版本有什么区别? 做不同的Python包(如南,Django的,mysqldb等)只支持32位\ 64位?