main.c文件是这样的:
#includ "hello.h"//自己的头文件
#include <qtopia/qpeapplication.h>
int main(int argc,char *argv[])
{
QPEApplicatin a(argc,argv);
HelloForm f;//自己头文件中的窗体类
a.showMainWidget(&f);
return a.exec();
}
其他文件有,hello._base.ui(desiner设计的界面),hello.h(hello_base.ui被uic形成hello_base.h后的子类)hello.cpp(子类实现文件)
我在编好Makefile以后make,形成了main.o,hello_base.o,moc_hello_base.o以及hello.o,都是ARM处理器的,当我打算连接这些.o模块的时候,出现以下错误:
arm-linux-g++ -L./ qtopia/ lib -Wl,-rpath,qtopia/ lib -L qt / lib -Wl,-rpath,/1 qt/ lib -o hello main.o hello_base.o moc_hello_base.o hello.o -L/2.95.3/ lib -lm -lqte
main.o:In function 'main':
main.o(.text+0x28);undefined reference to 'QPEApplication::QPEApplication(int &,char **,QApplication::Type)'
......
main.o(.text+0x74);undefined reference to 'QPEApplication::~QPEApplication(void)'
好像它找不到main.c里面的qpeapplication.h文件
我估计是我Makefile里面错了,Makefile里我这样写的:
all:$(TARGET)
$(TARGET):hello_base.h main.o hello.o hello_base.o moc_hello_base.o
$(SYSCONF_LINK) $(LFLAGS) -o hello main.o hello.o hello_base.o moc_hello_base.o $(LIBS)
其中:
SYSCONF_LINK =arm-linux-g++
LFLAGS =-L$(QTDIR)/1ib -Wl,-rpath,$(QTDIR)/1ib -L$(QPEDIR)/1ib -Wl,-rpath,$(QPEDIR)/1ib
关键在于这里:
LIBS=$(SUBLIBS) -L/usr/2.95.3/1ib -L$(QTDRI)/1ib -lm -lqte这里帮我看看有没有错误
琢磨了很久了,没结果,希望有人回帖帮助