把.c改为.cpp文件,编译出现问题,怀疑是makefile问题
(2012-04-11 01:44:54)
标签:
杂谈
把.c改为.cpp文件,编译出现问题,怀疑是makefile问题我编写的语言程序命名为:portapp.c,rtclocklib.c,wdtapp.c,dispapp.c,keyboard.c,main.c
。
我的makefile源码如下:
CC = /usr/local/arm/3.3.2/bin/arm-linux-g++
LD = /usr/local/arm/3.3.2/bin/arm-linux-ld
AR = /usr/local/arm/3.3.2/bin/arm-linux-ar
EXEC = main
OBJS = main.o dispapp.o keyboard.o portapp.o rtclocklib.o
INCLUDE:=-I./ -I../include -I/home/linux-2.6.13-hzh/include
CFLAGS :=${INCLUDE}
LIBS := -lpthread
all: $(EXEC)
$(EXEC): $(OBJS)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
wdt:wdtapp
$(CC) $(LDFLAGS) -o wdtapp wdtapp.c
port:portapp
$(CC) $(LDFLAGS) -o portapp portapp.c
can:cantxrx
$(CC) $(LDFLAGS) -o cantxrx cantxrx.c
rtc:rtclocklib
$(CC) $(LDFLAGS) -o rtclocklib rtclocklib.c
kbd:keyboard
$(CC) $(LDFLAGS) -o keyboard keyboard.c
lcd:dispapp
$(CC) $(LDFLAGS) -o dispapp dispapp.c
clean_so:
-rm -f *.so
clean_a:
-rm -f *.a
clean:
-rm -f $(EXEC) *.elf *.gdb *.o $(EXEC1)
使用make命令是可以编译的,但是我把所有源文件改为.cpp,就不能编译了,提示:
# make
g++ -c -o main.o main.cpp
make: g++: Command not found
make: *** Error 127
是不是makefile要修改以下,请指教。初次使用makefile.
[ 本帖最后由 wuyunzdh 于 2009-6-13 20:25 编辑
]没有安装g++编译器,这个是编译C++文件的,和编译纯C的编译器并不是一个。谢谢,但是我的/usr/local/arm/3.3.2/bin/下面有arm-linux-g++,并且我可以用它编译普通的C。但是把.c改成.cpp就不行了。
/usr/local/arm/3.3.2/bin/下还有一个arm-linux-gcc是用来编译普通C的。编译.c也是没问题的!!!回复
#1 wuyunzdh 的帖子你的报错和你的文件不对应吧?
怎么说你报的错应该是
# make
/usr/local/arm/3.3.2/bin/arm-linux-g++ -c -o main.o main.cpp
make: /usr/local/arm/3.3.2/bin/arm-linux-g++: Command not
found
make不会有那么智能http://www.yaobi.net/,能知道arm-linux-g++ 它叫做 g++ 吧?
而且我感觉好像也没说明 .o是怎么生成,它怎么会自动展出来
-c -o main.o main.cpp
这个呢?
最好弄个干净的目录再试吧。。。
当然,我也是个菜鸟,对这个也不是非常了解,如果说的不对还请见谅。。。which
g++看看有arm-linux-g++,但是没有g++,,他们不是一回事啊谢谢大家的帮忙!!# which g++
/usr/bin/which: no g++ in
(/usr/local/arm/3.3.2/bin:/usr/local/arm/2.95.3/bin:/usr/local/arm/2.95.3/bin:/usr
分享:
喜欢
0
赠金笔
加载中,请稍候......
评论加载中,请稍候...
发评论
登录名: 密码: 找回密码 注册记住登录状态
昵 称:
评论并转载此博文
发评论
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。