免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2002 | 回复: 0
打印 上一主题 下一主题

ubuntu+eclipse+CDT环境的helloworld程序例子(standard make [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-23 20:04 |只看该作者 |倒序浏览

创建一个C++ project,并添加好main.cc和main.h两个文件:
main.h
#ifndef MAIN_H_
#define MAIN_H_
char *gStrMyName = “adreaman”;
#endif /*MAIN_H_*/
main.cc
#include “main.h”
int main()
{
printf(”Hello world!I am %s\n”,gStrMyName);
return 0;
}
新建一个名为makefile的文件,make程序将使用这个文件定义的规则来build(编译、链接)出可执行文件:
makefile
all : helloworld
helloworld : main.o
gcc -o helloworld main.o
main.o : main.cc main.h
gcc -c main.cc
clean :
rm main.o
务必记得,依赖条件下面的那些命令行(也就是上面gcc -o, 或gcc -c 那些行)需要用tab键从行头隔一下,否则将在make时收到“makefile:1:   ***   遗漏分隔符   。   停止”这样的错误报告。而依赖条件一定要顶格写。
make是以all这个依赖规则开始的,所以,一定要把最终的输出写在all规则中。
如果得到下面这个错误报告:
gcc -c xxx.cc
gcc: error trying to exec ‘cc1plus’: execvp: 没有该文件或目录
则说明C++编译器还没有安装好,用apt-get install或者新立德安装g++就可以了。
编译的时候出现“undefined reference to `__gxx_personality_v0′”错误,是因为编译 C++ 程序,需要链接 C++ 的函数库 libstdc++.a。加上-lstdc++选项就可以了:
all : helloworld
helloworld : main.o
gcc -o helloworld main.o -lstdc++
main.o : main.cc main.h
gcc -c main.cc  -lstdc++
clean :
rm main.o
原文地址:
http://adreaman.com/1118ubuntu-eclipse-cdt-standard-make-c-project-hello-world.html
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/97173/showart_1938023.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP