Articles of 32位

编译和链接Debian 64位上的32位应用程序

我目前正在试图编译和链接我的Debian 64位上的32位应用程序,但在链接时失败。 我正在使用(在我的Makefile中)编译的命令是: gcc -Os -m32 -Wall -g -c $< -o $@ 这似乎工作。 然后我用下面的命令链接: gcc -m32 -lcurses $^ -o $@ 这会失败,并提供以下错误: /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libcurses.so when searching for -lcurses /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libcurses.a when searching for -lcurses /usr/bin/ld: skipping incompatible /usr/lib/libcurses.so when searching for -lcurses /usr/bin/ld: skipping incompatible /usr/lib/libcurses.a when searching for -lcurses /usr/bin/ld: cannot […]

我怎样才能用go1.6.2构buildlinux 32位版本

有没有GOARCH和GOOS值的组合,我可以设置为了构buildELF 32位二进制?

syscall或sybase在32位Linux上?

由于MS-DOS,我知道使用中断的系统调用。 在旧的论文中,我看到引用int 80h来调用Linux上的系统函数。 既然现在已经很长时间了,我知道int 80h已经被弃用了,而且是有利于syscall 。 但是我不能在我的32位机器上工作。 这个问题 syscall指令是否仅在64位平台上使用? Linux 32位不使用syscall吗? 样品testing 在我的32位Linux(Ubuntu Precise)上,这个程序终止于一个核心转储: global _start _start: mov eax, 4 ; 4 is write mov ebx, 1 ; 1 is stdout mov ecx, message ; address of string mov edx, length ; number of bytes syscall mov eax, 1 ; 1 is exit xor ebx, […]

无法在64位Linux上运行32位应用程序

我有一个非常小的Ubuntu 8.04 64位安装。 当我尝试运行一些32位程序时,例如我的jhead程序,我得到消息No such file or directory 。 我想这可能是一个图书馆的问题,但是当我这样做的时候: ldd jhead 而不是它需要的库列表,我只是得到消息not a dynamic application 。 对于我使用的另一个旧的32位应用程序也是如此。 所以会出现一些运行32位应用程序的非常重要的组件。 但是我怎么才能确定这些是什么?

如何使用mingw-w64编译和链接32位Windows可执行文件

我使用Ubuntu 13.04并使用apt-get install mingw-w64 。 我可以使用下面的命令编译并链接我的程序的一个可用的64位版本: x86_64-w64-mingw32-g++ code.cpp -o app.exe 其中生成一个64位的app.exe文件。 我用什么二进制或命令行标志来生成一个32位版本的app.exe?

在64位ubuntu编译32位汇编程序

我有用32位汇编语言编写的程序…现在我只是不能在64位操作系统上编译它。 在我们的学校他们是具体的,程序必须写在32位版本。 这是我的程序: bits 32 extern _printf global _start section .data message db "Hello world!!", 10, 0 section .text _start: pushad push dword message call _printf add esp, 4 popad ret 任何想法? 我已经尝试了很多方法来编译它。 编译后输出错误: nasm -f elf64 vaja4.asm ld vaja4.o -o vaja4 ./vaja4 输出: vaja4.o: In function `_start': vaja4.asm:(.text+0x7): undefined reference to `_printf'

Linux上pid_t,uid_t,gid_t的大小

在Linux系统(32位或64位)上, pid_t , uid_t和gid_t的大小是多less?

将32位库链接到64位程序

我有一个32位.so二进制只有库,我必须生成使用它的64位程序。 有没有一种方法来包装或转换它,所以它可以用于64位程序?

有没有办法在32位计算机上执行64位程序?

只是一个简单的问题:有没有办法在32位机器上运行64位Windows环境下编译的程序(使用mingw64)? 任何DLL或任何兼容层,我可以使用?

确定64位与32位Windows

我想configurationvisual studio 2005复制.dll的基础上是否在构build过程中的操作系统是64位或32位。 我不想指定平台目标是什么。 我第一次尝试使用batch file来查找Windows版本,但一些32位和64位版本的Windows共享相同的版本号。 任何人都知道有任何方法来检查这个? 谢谢!