Questions tagged «32bit-64bit»

与使用64位和32位体系结构有关的问题,包括可移植性问题。

30
无法启动Eclipse-Java已启动,但返回了退出代码= 13
我正在尝试使用Eclipse进行Android开发。我在尝试运行Eclipse时遇到了这个问题,它仅在几分钟前安装了4.2版。 在第一次尝试Eclipse不使用任何参数指定Java VM的情况下启动后,我收到一条错误消息,说它为couldn't find a Java VM called javaw.exe inside the Eclipse folder,所以我找到了Java的安装位置,并将该位置指定为快捷方式目标中的参数。现在出现另一个错误,Java was started but returned exit code=13。 类似的问题似乎表明这是32位/ 64位冲突,但是我对我下载Eclipse和的64位版本表示肯定,Java (RE 7u5)因为我拥有64位Windows 7 ,因此我对此表示肯定。 如果有人知道如何确认我的Eclipse和Java是64位的,将不胜感激。 如果您认为我的问题不同,请提供帮助! 请尽我所能,因为我是Eclipse和Java的新手。 快捷方式目标:“ C:\ Program Files \ Eclipse-SDK-4.2-win32-x86_64 \ eclipse \ eclipse.exe” -vm“ C:\ Program Files(x86)\ Java \ jre7 \ bin \ javaw.exe” 完整的错误代码...: …

21
如何确定给定的Linux是32位还是64位?
当我输入时uname -a,它给出以下输出。 Linux mars 2.6.9-67.0.15.ELsmp #1 SMP Tue Apr 22 13:50:33 EDT 2008 i686 i686 i386 GNU/Linux 从中我如何知道给定的操作系统是32位还是64位? 这在编写configure脚本时非常有用,例如:我要为哪种体系结构构建?

17
由于以下错误,检索具有CLSID {XXXX}的组件的COM类工厂失败:80040154
我使用C#.NET开发了Windows服务以生成PDF报告。要生成PDF文件,我正在使用第三方dll。该应用程序正在我的Windows XP平台上运行。在Windows Server 2008 64位版本中部署服务时,出现此错误: 由于以下错误,检索具有CLSID {46521B1F-0A5B-4871-A4C2-FD5C9276F4C6}的组件的COM类工厂失败,原因为:80040154。 我使用regsvr32命令注册了DLL。我可以在注册表中看到此CLSID。但是问题仍然存在。 可能是什么问题呢?

5
为什么在64位Windows上,将64位DLL转到System32,将32位DLL转到SysWoW64?
我想知道我们什么时候需要在下面放置文件 在64位Windows系统上为C:\ Windows \ System32或C:\ Windows \ SysWOW64。 我有两个DLL,一个用于32位,一个用于64位。 从逻辑上讲,我想将32位DLL放在C:\ Windows \ System32下,并将64位DLL放在C:\ Windows \ SysWOW64下。 令我惊讶的是,它正好相反!的32位一个进入C:\的Windows \ SYSWOW 64,和64位DLL进入C:\的Windows \系统32。 非常令人困惑的东西。这是什么原因呢?

21
Microsoft.Jet.OLEDB.4.0的提供程序未在本地计算机上注册
我在32位Windows 2008服务器中创建了一个用.NET 3.5开发的Windows应用程序。在64位服务器上部署应用程序时,它显示错误“ Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册”。 因此,作为此问题的解决方案,我将项目的build属性更改为X86,以便它将以32位模式进行构建,并在32位计算机上重建该项目。但是,同一项目使用其他数据库驱动程序(DB2,SQL等)连接到其他数据库。因此,当我再次在64位操作系统上部署我的应用程序时,它会抛出异常“试图在32位平台上加载64位程序集。” 我正在使用Microsoft.Jet.OLEDB.4.0驱动程序来读写Excel(.xls)
191 c#  .net  oledb  32bit-64bit  jet 


8
在Ubuntu中的32位上交叉编译64位程序时缺少“ bits / c ++ config.h”
我正在运行32位版本的Ubuntu 10.10,并尝试交叉编译为64位目标。根据我的研究,我已经安装了g ++-multilib软件包。 该程序是一个非常简单的问候世界: #include <iostream> int main( int argc, char** argv ) { std::cout << "hello world" << std::endl; return 0; } 编译: g++ -m64 main.cpp 错误: In file included from main.cpp:1: /usr/include/c++/4.4/iostream:39: fatal error: bits/c++config.h: No such file or directory compilation terminated. 我找到了一个c++config.h文件,但它们位于中的“没有” 中的i486-linux-gnu和i686-linux-gnu目录下。/usr/include/c++/4.4/c++config.h/usr/include/c++/bits 关于我所缺少的任何想法?不带-m64标志的编译工作正常(a.out已创建并正确运行)。 编辑由于@nightcracker的提示,我对32位和64位系统的include结构进行了更多研究。我在下面添加了一个可以暂时“解决”问题的答案,但是我认为它将在下次更新时中断。基本上,我缺少一个名为的目录/usr/include/c++/4.4/i686-linux-gnu/64,该目录应包含一个名为的子目录bits,该子目录具有丢失的包含文件。知道应该由哪个软件包来处理吗?



15
在C ++中确定32位和64位
我正在寻找一种可靠地确定C ++代码是否以32位和64位编译的方法。我们已经提出了我们认为使用宏的合理解决方案,但是很想知道人们是否可以想到这种情况可能会失败,或者是否有更好的方法来做到这一点。请注意,我们正在尝试在跨平台的多编译器环境中执行此操作。 #if ((ULONG_MAX) == (UINT_MAX)) # define IS32BIT #else # define IS64BIT #endif #ifdef IS64BIT DoMy64BitOperation() #else DoMy32BitOperation() #endif 谢谢。

3
NSInteger的NSLog / printf说明符?
A NSInteger在32位平台上为32位,在64位平台上为64位。是否有一个NSLog始终与大小匹配的说明符NSInteger? 建立 Xcode 3.2.5 llvm 1.6编译器(这很重要; gcc不会这样做) GCC_WARN_TYPECHECK_CALLS_TO_PRINTF 打开 这让我有些悲伤: #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { @autoreleasepool { NSInteger i = 0; NSLog(@"%d", i); } return 0; } 对于32位代码,我需要说明%d符。但是,如果使用说明%d符,则在编译64位时会收到警告,提示我%ld改用。 如果我%ld用来匹配64位大小,则在编译32位代码时会收到一条警告,提示我%d改为使用。 如何同时解决两个警告?是否有我可以使用的说明符? 这也会影响[NSString stringWithFormat:]和[[NSString alloc] initWithFormat:]。

7
在Visual Studio中构建时有条件地使用32/64位引用
我有一个构建在32/64位并且具有相应的32/64位依赖项的项目。我希望能够切换配置并使用正确的引用,但是我不知道如何告诉Visual Studio使用适合于体系结构的依赖关系。 也许我会采用错误的方式,但是我希望能够在配置下拉菜单中在x86和x64之间切换,并使引用的DLL正确无误。


7
为什么在x64 Java中long比int慢?
我在Surface Pro 2平板电脑上运行带有Java 7更新45 x64(未安装32位Java)的Windows 8.1 x64。 当i的类型为long时,下面的代码花费1688ms,而当i的类型为int时,下面的代码花费109ms。为什么长(64位类型)比具有64位JVM的64位平台上的int慢一个数量级? 我唯一的猜测是,与64位整数相比,CPU需要更长的时间来添加32位整数,但这似乎不太可能。我怀疑Haswell不会使用纹波加法器。 我正在Eclipse Kepler SR1中运行它,顺便说一句。 public class Main { private static long i = Integer.MAX_VALUE; public static void main(String[] args) { System.out.println("Starting the loop"); long startTime = System.currentTimeMillis(); while(!decrementAndCheck()){ } long endTime = System.currentTimeMillis(); System.out.println("Finished the loop in " + (endTime - startTime) …

5
在LINUX中,确定.a库/归档是32位还是64位?
我们在Linux中分发了64位和32位版本的静态库。在对客户进行故障排除时,我希望我的诊断Shell脚本通过检查.a存档文件以确定它是32位还是64位来快速消除此问题。我想到的方法并不优雅: 提取一个.o成员并询问“文件”命令(例如,ELF 32位等) 开始包括一个编码为表示例如32bit.o / 64bit.o的虚拟成员,并使用“ ar -t”进行检查 我已经尝试过“ strings xyz.a | grep 32”,但这在所有版本中都无法正常工作。这不是令人心碎的问题,但是如果您知道一个优雅的解决方案,我想知道。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.