mingw gcc 编译helloworld 不生成可执行文件

StoryGuo 2017-03-03 02:02:52
文件名为hello.c,代码为
#include <stdio.h>

int main()
{
printf("hello world!\n");
return 0;
}

gcc版本4.8.1,执行的命令为 gcc -o hello hello.c(gcc -o hello.exe hello.c)都没有可执行文件生成,C:\MinGW\bin已加到环境变量。

但是将同样的mingw和hello.c拷贝到其他同学PC(同样是64位,试了两台都可以)却可以生成hello.exe,执行也没正常。请问是我电脑配置有问题吗?还是需要安装或者卸载什么软件吗?
...全文
927 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 4 楼 w1641 的回复:
@DelphiGuy,执行as --32 hello.s -o hello.o也没有文件生成
我用tdm-gcc-64 5.1测试是正常的,你看看目录的访问权限。
ForestDB 2017-03-06
  • 打赏
  • 举报
回复
注意有无错误信息。 关了杀毒软件。
幻夢之葉 2017-03-04
  • 打赏
  • 举报
回复
cmd输入 gcc -help 测试配置是否正确 编译的时候先进入到你文件所在目录
StoryGuo 2017-03-04
  • 打赏
  • 举报
回复
@cfjtaishan, 啥问题,怎么解决 @DelphiGuy,执行as --32 hello.s -o hello.o也没有文件生成
  • 打赏
  • 举报
回复
gcc -c hello.s -o hello.o 应该用 as --32 hello.s -o hello.o
自信男孩 2017-03-03
  • 打赏
  • 举报
回复
不是程序的问题,应该是编译环境的问题;
StoryGuo 2017-03-03
  • 打赏
  • 举报
回复
同时尝试了单步调试, 首先执行gcc -E hello.c -o hello.i,生成了19KB大小的hello.i,个人认为这部执行时没有问题的 再次执行gcc -S hello.i -o hello.s,生成了1KB大小的文件hello.s, 然后想通过gcc -c hello.s -o hello.o,就没有结果文件生成了,也不报错。 第二步生成的hello.s用文本方式打开如下, .file "hello.c" .def ___main; .scl 2; .type 32; .endef .section .rdata,"dr" LC0: .ascii "hello world!\0" .text .globl _main .def _main; .scl 2; .type 32; .endef _main: LFB6: .cfi_startproc pushl %ebp .cfi_def_cfa_offset 8 .cfi_offset 5, -8 movl %esp, %ebp .cfi_def_cfa_register 5 andl $-16, %esp subl $16, %esp call ___main movl $LC0, (%esp) call _puts movl $0, %eax leave .cfi_restore 5 .cfi_def_cfa 4, 4 ret .cfi_endproc LFE6: .ident "GCC: (GNU) 4.8.1" .def _puts; .scl 2; .type 32; .endef 哪位大侠帮忙看下,是什么原因导致的,谢谢

70,019

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧