• 5063阅读
  • 2回复

野火求救:designer界面的编译不能通过 [复制链接]

上一主题 下一主题
离线rxjhwk2008
 
只看楼主 倒序阅读 楼主  发表于: 2008-09-18
— 本帖被 XChinux 执行加亮操作(2008-09-20) —
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这里帮我看看有没有错误
琢磨了很久了,没结果,希望有人回帖帮助
勇于实践,敢于面对,虚怀若谷,让我们共成长
离线newdc

只看该作者 1楼 发表于: 2008-09-18
看看src.pro中有没有QT -= gui,把它干掉。
离线rxjhwk2008
只看该作者 2楼 发表于: 2008-09-18
.pro文件中没哟QT这一项,无从改掉。
勇于实践,敢于面对,虚怀若谷,让我们共成长
快速回复
限100 字节
 
上一个 下一个