rhi*_*ino 2 c linux debian gcc segmentation-fault
不久前,我已经安装了Debian,并在朋友的帮助下对其进行了配置.
昨天我已经下载了GCC 4.4,我创建了一个简单的程序来测试它.
这是代码:
#include <stdio.h>
int main () {
int result;
printf ("Hello Wor... Linux! This is my %dst program compiled in Debian.\nHow many is 2+2?\n", 1);
scanf ("%d", &result);
while (result!=4) {
printf ("Oh no! You're not going anywhere until you type the correct result! 2+2 is?\n");
scanf ("%d", &result);
}
printf ("Congrats!\n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我通过键入gcc-4.4 myfile.cbash 编译它.然后我试图运行生成的二进制文件,它就像我想要的那样工作.然后我将二进制文件发送给我的朋友,以便在他的PC上进行测试.当他试图运行它时,他收到了一个分段错误消息,该程序无效.
他还使用Debian,他的内核版本与mine(2.6.32-5-686)非常相似.唯一的区别是他的内核是amd-64(他拥有64位处理器,而我的是32位).
为什么会这样?这是否意味着64位Linux用户将无法运行我的32位程序?如果是这样,我可以用一种让他们运行它的方式编译它吗?
请注意,我对Linux并不熟悉.
他可能需要一个chroot.
apt-get install ia32-libs
Run Code Online (Sandbox Code Playgroud)
应该适用于大多数情况.
请参阅"使用IA32 chroot运行32位应用程序" http://alioth.debian.org/docman/view.php/30192/21/debian-amd64-howto.html#id292205
| 归档时间: |
|
| 查看次数: |
1252 次 |
| 最近记录: |