当前位置:  技术问答>HTML标签参考手册 iis7站长之家

gcc -g 通不过 -c却通过 原因?

    来源: 互联网  发布时间:2016-08-16

    本文导语:  /* main.c */ #include "mytool1.h" #include "mytool2.h" int main(int argc,char **argv) { mytool1_print("hello"); mytool2_print("hello"); } /* mytool1.h */ #ifndef _MYTOOL_1_H #define _MYTOOL_1_H void mytool1_print(char *print_str); #endif /* mytool1.c */ #include "mytool1.h" void ...


/* main.c */
#include "mytool1.h"
#include "mytool2.h"
int main(int argc,char **argv)
{
mytool1_print("hello");
mytool2_print("hello");
}
/* mytool1.h */
#ifndef _MYTOOL_1_H
#define _MYTOOL_1_H
void mytool1_print(char *print_str);
#endif
/* mytool1.c */
#include "mytool1.h"
void mytool1_print(char *print_str)
{
printf("This is mytool1 print %sn",print_str);
}
/* mytool2.h */
#ifndef _MYTOOL_2_H
#define _MYTOOL_2_H
void mytool2_print(char *print_str);
#endif
/* mytool2.c */
#include "mytool2.h"
void mytool2_print(char *print_str)
{
printf("This is mytool2 print %sn",print_str);
}

Makefile

main: mytool1.o mytool2.o main.o
gcc -o main main.o mytool1.o mytool2.o
main.o: main.c mytool1.h mytool2.h
gcc -g main.c
mytool1.o: mytool1.c mytool1.h
gcc -g mytool1.c
mytool2.o: mytool2.c mytool2.h
gcc -g mytool2.c

clean: 
rm -f mytool1.o mytool2.o main.o

当把gcc -g 换成 -c就ok了 。为什么?

|
gcc -o main main.o mytool.o -g

gcc -c main.c

为什么

man gcc ..........

|
-g  仅仅是增加调试信息  ,没有约束生成的作用
默认就会执行到链接,生成可执行elf

-c 会停在汇编这一步,不进行链接

|
编译过程中 貌似和-g木有什么关系

    
 
 

您可能感兴趣的文章:

  • arm-linux-gcc交叉编译出错,但gcc编译没错,什么原因呢???
  • 现在用gcc编译出现如下问题是何原因
  • ubuntu的gcc 不能用了,什么原因啊?
  • 运行gcc -g tdetail.cpp -o bugged 有如下错误是何原因?
  • gcc编译c++程序报错,什么原因?
  • 为什么g++编译通过了,而gcc却编译通过不了???
  • 通过rpm完成安装GCC之后 。。。
  • GCC是怎么通过.h文件找到C函数库的
  • 用gcc编译c程序能通过,为何没执行结果?
  • 请问:gcc和g++默认的include目录是在哪里?通过哪里可以设置自己额外的包含路径?
  • 问:用g++编译通过的代码,为啥用gcc不可以?(附代码)
  • 在vc下可以编译通过的C++代码,可是拿到gcc下去编就失败
  • linux下第一个程序gcc不通过
  • 为什么gcc编译通过,gdb调试报“Segment fault”呢
  • 谁能在linux下用gcc编译通过这段程序?(高手请进)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux下GCC内置原子操作函数(多线程资源访问)介绍
  • 使用popen来执行gcc命令,如何根据读出来的gcc的输出来判断gcc是否编译成功?
  • 命令:mips_fp_le-gcc,mipsel-gcc 是什么意思?跟一般的gcc有什么区别?
  • 怎样升级我的GCC呀,我用的RH7.2,GCC 2.96 ,我从网上下载了一个gcc-3.2.3.tar.gz
  • arm-elf-gcc 和 arm-linux-gcc有什么区别?arm-elf-gcc里的elf代表什么?
  • gcc-ccore、avr-gcc及arm-gcc的区别
  • gcc在哪里?bash:gcc:command not found
  • 如何删掉GCC3.0(我需要GCC2.0-----)
  • Windows版GCC TDM-GCC
  • 急问:如何卸掉gcc 3.2庄gcc 2.96
  • 有人遇到过吗,在安装GCC时提示,"checking gcc ...no "
  • gcc编译时出错,gcc: installation problem, cannot exec `as': 没有那个文件或目录!!!求助呀呀!!!!!
  • GCC无法安装的问题,希望有人帮我( Debian 4.04ra无法安装GCC)
  • Solaris8,安装了iconv,gcc和gcclib,然后用gcc编译c程序出错。
  • 一套未安装gcc的Linux中安装gcc rpm包时时出现错误
  • gcc与arm-linux-gcc编译的问题???
  • 下了一个GCC3.0包用tar xjfv gcc-3.0.tar.bz2解压后出现一堆文
  • 请问如何安装rpm格式的gcc如gcc-3.2.2-5.src.rpm,谢谢
  • 在redhat9下,如何将gcc3.x改为gcc2.x?
  • linux x86_64下由于拷贝gcc的lib目录导致gcc编译器出错
  • 我在Solaris8上安装了gcc3.3Solaris8,但是总是出错!错误如下:gcc: syntax error at line 1: `(' unexpected


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3