首先gcc是ubutnu下默认安装的。装gdb:
sudo apt-get install gdb
然后再装gvim:
sudo apt-get install gvim
于是我们可以编写一个hello world程序。
新建文件my.h
里面写
int b=8;
再新建一个my.h,里面写:
int add(int a,int b);
再新建一个my.c,里面写
int add(int a,int b){
return a+b;
}
再新建一个test.c,里面写
#include <stdio.h>
#include "my.h" //这里你也可以用extern int add(int ,int) 来代替
int main(){
printf("%d\n",add(2,3));
return 0;
}
接着写makefile,在同目录下(注意gcc前面应当是一个tab键)
test:my.o my.o test.o
gcc my.o test.o -o test
my.o:my.c
gcc -c my.c -o my.o
test.o:test.c my.h
gcc -c test.c -o test.o
里面的具体的约束规则我就不多说了。注意,这里如果你在gcc后面不加任何参数的话,会默认你要生成的是可执行文件,就算你指定目标后缀名是.o但是这个.o竟然是可执行文件。
然后在命令行上写 make test就可以了。
如果要调试的话
只要修还makefile为
test:my.o test.o
gcc -g test.c my.c my.h -o test
即可。
用gdb ./test,然后b 3,r,print,step来调试
具体讲一下细节
如果有一段c代码test.c:
#include <stdio.h>
int add(int,int);
int main(){
printf("%d\n",add(2,3));
return 0;
}
你可以用gcc -E test.c -o test.i
gcc -S test.i -o test.s
as test.s -o test.o
gcc test.o -o test
你可以发现在执行最后一条语句的时候出错了。可见在做函数连接的时候是在最后连接的时候做的。
而如果有一段代码是,
#include <stdio.h>
int add(int,int);
int main(){
dasdasddasadsasd
printf("%d\n",add(2,3));
return 0;
}
中间加了一串莫名其妙的字符,则会在生成test.s的时候出错。这里是很耐人寻味的。
分享到:
相关推荐
android源码环境搭建,linux环境搭建,ubuntu10.04配置手册.pdf+Android SDK 开发指南.pdf.rar
#dpkg -i language-pack-zh-hans_1%3a10.04+20100421_all.deb language-pack-zh-hans-base_1%3a10.04+20100421_all.deb language-pack-gnome-zh-hans-base_1%3a10.04+20100421_all.deb language-pack-gnome-zh-hans_...
《Ubuntu 10.04完整版》这本书是针对Ubuntu 10.04 LTS(长期支持版)发行版的一份详尽指南,旨在帮助读者深入理解和熟练掌握这个流行的Linux操作系统。Ubuntu是一款基于Debian的开源操作系统,以其用户友好、易用性...
### Ubuntu 10.04 下安装 gcc4.1 和 g++4.1 的详细步骤与解析 #### 一、背景介绍 Ubuntu 10.04 LTS (Lucid Lynx) 是一个非常受欢迎的 Linux 发行版,它在发布时预装了许多软件包和工具。其中,默认安装的编译器版本...
在本文中,我们将深入探讨如何在Ubuntu 10.04 LTS(Lucid Lynx)系统上使用离线汉化包进行系统语言的汉化。这个版本的Ubuntu是一款长期支持版,对于那些无法连接到互联网的用户来说,离线汉化包提供了方便的方式来将...
Ubuntu 10.04 安装配置手记 本文档记录了 Ubuntu 10.04 的安装配置过程,包括硬盘安装、Grub4Dos 安装、menu.lst 文件修改、ubuntu-10.04-alternate-i386.iso 文件复制、安装过程、系统通用配置等。 一、硬盘安装 ...
Ubuntu 10.04 LTS,全称Lucid Lynx,是Ubuntu操作系统的一个重要发布版本,于2010年4月29日正式推出。LTS代表“长期支持”(Long Term Support),意味着这个版本将得到更长时间的技术支持,对于个人用户和企业用户...
标题“Ubuntu10.04”指的是Ubuntu操作系统的一个特定版本,即10.04 LTS(长期支持版),代号为“Lucid Lynx”。Ubuntu是基于Debian GNU/Linux的开源操作系统,以其用户友好的界面和广泛的应用软件库而闻名。LTS版本...
官方的chrome 只支持12.04以上的版本,由于所需的库不同 ubuntu 10.04 只能用之前的版本
在深入探讨如何安装Ubuntu 10.04的全过程之前,我们先来了解下Ubuntu 10.04以及为何选择在VMware Workstation虚拟机中进行安装。 ### Ubuntu 10.04简介 Ubuntu 10.04 LTS(长期支持版本),代号为“Lucid Lynx”,...
综上所述,这个压缩包可能包含了一套完整的配置,用于在Ubuntu 10.04环境下使用GDB 7.5和Python 2.6来调试Android应用的本地代码。用户需要将gdb和gdbserver部署到适当的环境中,按照特定的步骤配置GDB以连接到...
Ubuntu 10.04完全版入门教程 包含Ubuntu安装,配置过程,以及shell编程等内容。 分两部分: Ubuntu 10.04完全版first part Ubuntu 10.04完全版second part
### Ubuntu 10.04 下安装 OpenCV 2.2.0 详细步骤 #### 知识点一:Ubuntu 10.04 环境介绍 - **Ubuntu 10.04 LTS**(代号 Lucid Lynx)是 Ubuntu 的一个长期支持版本,发布于2010年4月29日。它提供了大量的软件包,...
【VMware Workstation安装Ubuntu 10.04详细教程】 VMware Workstation是一款流行的虚拟机软件,允许用户在同一台物理计算机上运行多个操作系统。在这个教程中,我们将详细讲解如何在VMware Workstation中安装Ubuntu...
本篇将详细介绍如何使用VM7来安装Ubuntu 10.04 LTS(Lucid Lynx)操作系统。 一、VMware Workstation 7简介 VMware Workstation 7是VMware公司推出的一个版本,支持创建、配置和运行虚拟机。它提供了丰富的功能,如...
Ubuntu 10.04 LTS,全称Ubuntu 10.04 Long Term Support,是Ubuntu操作系统家族中的一个长期支持版本,发布于2010年。该版本在发布后5年内都得到了官方的安全更新及技术支持,对于企业用户和需要长期稳定运行环境的...
Ubuntu 10.04 安装配置指南 本文档提供了一个详细的 Ubuntu 10.04 安装配置指南,涵盖了从准备安装到配置输入法的所有步骤。首先,用户需要下载 Ubuntu 光盘镜像文件,并校验其 MD5 值,然后备份数据,最后可以选择...
### Ubuntu 10.04 DSL 上网配置详解 #### 引言 随着Linux操作系统的日益普及,越来越多的用户开始尝试使用Linux系统替代传统的Windows操作系统。对于初学者而言,Linux的强大功能与灵活性往往伴随着较高的学习曲线...
### Android 2.2 源码编译指南:Ubuntu 10.04 (X86) + Android 2.2 + JDK 1.6 #### 一、环境搭建 在进行Android 2.2源码编译之前,我们需要准备一个合适的开发环境。根据题目中的描述,本指南将详细介绍如何在...