0

我在 Ubuntu 10.04 LTS Lucid Lynx 中使用 QDevelop、Qt IDE(Qt 版本 4.6.2)时遇到问题。我尝试使用的代码已从较新的 64 位笔记本电脑转移到我的 32 位笔记本电脑。两个系统都运行相同版本的 Ubuntu 和 Qt IDE。当我尝试构建代码时,我得到一长串错误,我真的不想在这里发布,但我会在我的文本末尾发布。任何帮助将不胜感激。无论出于何种原因,我的文本块都被切断了。我正在使用“< pre>在此处插入文本< slashpre>空白保留器技巧,我做错了什么?好的,我的构建文本块没有使用 pre slashpre html 东西正确格式化。这篇文章的格式是搞得一团糟!:|

我发送给我的大学的电子邮件:

我安装了 qwt-5.2.1 的 32 位版本,但它仍然没有构建,我得到了同样的错误。

附件是我的 .pro 和 make 文件以及显示我的构建结果的 buildoutput.txt。

看看您是否发现以下任何信息有任何问题:

检查路径:

在 myPico.pro 文件中有一行:LIBS += -L/usr/local/qwt-5.2.1/lib -lqwt-qt4(这是 32 位,我发现你可以输入“file”然后输入空格和一个文件名称,它将为您提供有关文件的信息,包括它是 32 位还是 64 位。请参阅下面的注释。)

在 /usr/local/qwt-5.2.1/lib 我有三个蓝绿色项目:libqwt.so、libqwt.so.5 和 libqwt.so.5.2 和一个绿色项目:libqwt.so.5.2.1。他们都指向 libqwt.so.5.2.1,它是 32 位的。

在 Makefile 中,INCPATH 行似乎一切正常,但我不明白该行的最后一部分:“-I/usr/include/qt4 -Ibuild -Ibuild” 当我转到 /usr/include/qt4 时,我不明白没有看到任何说构建的东西。这可能是一个问题吗?

在网上搜索解决方案时,我看到很多人有同样的问题,但他们的解决方案是神秘的/创可贴的捷径。

注意:我想到了一个可能的问题。你让我从你的系统中复制库,然后我们发现它们是 64 位的。我安装了 32 位的,但我不知道这是否删除了我们手动复制的内容。所以我想弄清楚我们将这些库复制到哪里。好的,我找到了它(/usr/local/qwt-5.2.1/lib),它们是 32 位的,所以安装 32 位会覆盖 64 位版本。

。轮廓:

模板 = 应用程序
QT = gui核心
CONFIG += qt warn_on 控制台调试
DESTDIR = 仓
OBJECTS_DIR = 构建
MOC_DIR = 构建
UI_DIR = 构建
表格 = ui/mainwindow.ui
HEADERS = src/mainwindowimpl.h src/picofunctions.h src/Thread.h
源 = src/mainwindowimpl.cpp src/main.cpp src/picofunctions.cpp src/Thread.cpp
LIBS += -L/usr/local/qwt-5.2.1/lib -lqwt-qt4

生成文件:

################################################# ###########################Makefile for building: bin/myPico # Generated by qmake (2.01a) (Qt 4.6.2) on : Mon Nov 22 10:56:19 2010 # Project: myPico.pro # Template: app # Command: /usr/bin/qmake-qt4 -unix -o Makefile myPico.pro ########### ################################################# ############### ####### 编译器、工具和选项 CC = gcc CXX = g++ DEFINES = -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED CFLAGS = -pipe -g -Wall -W -D_REENTRANT $(DEFINES) CXXFLAGS = -pipe -g -Wall -W -D_REENTRANT $(DEFINES) INCPATH = -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Ibuild -Ibuild LINK = g++ LFLAGS = LIBS = $(SUBLIBS) -L/usr/lib - L/usr/local/qwt-5.2.

构建输出:

构建(制作)... g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I。-I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Ibuild -Ibuild -o build/mainwindowimpl.o src/mainwindowimpl.cpp 在 /usr 包含的文件中/include/qt4/qwt_plot.h:17,来自 build/ui_mainwindow.h:29,来自 src/mainwindowimpl.h:5,来自 src/mainwindowimpl.cpp:1:/usr/include/qt4/qwt_array.h:25 :23:错误:qmemarray.h:没有这样的文件或目录在来自/usr/include/qt4/qwt_marker.h:20、来自/usr/include/qt4/qwt_plot.h:23、来自build/ui_mainwindow的文件中。 h:29,来自 src/mainwindowimpl.h:5,来自 src/mainwindowimpl.cpp:1:/usr/include/qt4/qwt_text.h:20:29:错误:qsimplerichtext。来自 /usr/include/qt4/qwt_plot.h:18,来自 build/ui_mainwindow.h:29,来自 src/mainwindowimpl.h:5,来自 src/mainwindowimpl.cpp:1:/usr/include/qt4/qwt_scldiv。 h:在全局范围内:/usr/include/qt4/qwt_scldiv.h:128:错误:ISO C++ 禁止声明没有类型的“QMemArray”/usr/include/qt4/qwt_scldiv.h:128:错误:预期的'; ' 在''/usr/include/qt4/qwt_plot_dict.h:22 之前:错误:'class QwtSeqDict'/usr/include/qt4/qwt_plot_dict.h 的声明:在构造函数'QwtCurveDict::QwtCurveDict()'中:/usr/include /qt4/qwt_plot_dict.h:66:错误:在此范围内未声明“setAutoDelete”/usr/include/qt4/qwt_plot_dict.h:在全局范围内:/usr/include/qt4/qwt_plot_dict.h:70:错误:无效使用不完整类型'class QwtSeqDict'/usr/include/qt4/qwt_plot_dict.h:22:错误:
4

1 回答 1

0

嗯,这个问题神秘地出现了,我什么也没做就消失了。

于 2010-12-03T16:04:53.370 回答