shepher 发表于 2020-7-28 14:08:31

求助,ubuntu 20 安装 qt 4.8.7 ,编译时的问题

在ubuntu 20下安装QT4.8.7,从everywhere的包编译的。
make过程中出现error,但是我在src里面找到Error提示的文件(CPP h ui等三个文件),发现所提示的相关的属性是存在的,
比如下面第一个错误 cupsPropertiesPage 这个控件存在,大小写也是正确的。。。

undefinedundefinedundefined
有人知道怎么解决吗?



make提示的问题如下:
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp: In destructor ‘virtual QPrintPropertiesDialog::~QPrintPropertiesDialog()’:
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp:281:19: error: ‘class Ui::QPrintPropertiesWidget’ has no member named ‘cupsPropertiesPage’
281 |   delete widget.cupsPropertiesPage;
      |                   ^~~~~~~~~~~~~~~~~~
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp: In member function ‘void QPrintPropertiesDialog::applyPrinterProperties(QPrinter*)’:
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp:287:12: error: ‘class Ui::QPrintPropertiesWidget’ has no member named ‘pageSetup’
287 |   widget.pageSetup->setPrinter(p);
      |            ^~~~~~~~~
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp: In member function ‘void QPrintPropertiesDialog::setupPrinter() const’:
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp:292:12: error: ‘const class Ui::QPrintPropertiesWidget’ has no member named ‘pageSetup’
292 |   widget.pageSetup->setupPrinter();
      |            ^~~~~~~~~
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp: In member function ‘void QPrintPropertiesDialog::selectPrinter()’:
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp:337:16: error: ‘class Ui::QPrintPropertiesWidget’ has no member named ‘cupsPropertiesPage’
337 |         widget.cupsPropertiesPage->setEnabled(false);
      |                ^~~~~~~~~~~~~~~~~~
/home/4.8.7/src/gui/dialogs/qprintdialog_unix.cpp:338:16: error: ‘class Ui::QPrintPropertiesWidget’ has no member named ‘pageSetup’
338 |         widget.pageSetup->selectPrinter(0);
      |                ^~~~~~~~~
…………………………

make: *** 错误 1

Since 发表于 2020-7-29 08:41:17

CTRL + 鼠标左键,能跳转到这几个属性嘛?这种错误还是挺明确的 ~

shepher 发表于 2020-7-29 09:58:09

linux 终端上make,没有链接的。

问题时很明显啊,我找到指向的几个文件了的 hcppui
说问题的这几个属性都是存在的,大小写也是正常的。。。

qmake123 发表于 2020-8-3 14:29:05

要么是没有写头文件,要么你定义出来的widget是指针类型的,要用“->”而不是用“.”

shepher 发表于 2020-8-5 16:04:48

qmake123 发表于 2020-8-3 14:29
要么是没有写头文件,要么你定义出来的widget是指针类型的,要用“->”而不是用“.” ...

我是编译QT 4.8.7 的 everywhere 的源码啊,安装在Ubuntu里面。

用 qt creator打开看了的,应该用是.
而且如果是->那也该提示代码问题,而不是说   has no member

qmake123 发表于 2020-8-7 17:00:41

shepher 发表于 2020-8-5 16:04
我是编译QT 4.8.7 的 everywhere 的源码啊,安装在Ubuntu里面。

用 qt creator打开看了的,应该用是.


写了头文件吗?可以直接在头文件按F2转到源码吗?

lwb 发表于 2021-6-29 15:32:36

请问这个问题有人解决了嘛,在ubuntu20上编译qt库时遇到同样问题

liushsh 发表于 2022-3-10 21:26:10

是gcc版本太高了,编译出来的 uic 有问题。建议切换到 gcc7。
https://blog.csdn.net/u013028556/article/details/123404294

liushsh 发表于 2022-3-11 09:55:45

ubuntu20自带的gcc版本太高了。换成gcc7就好了。
https://www.qter.org/home.php?mod=space&uid=42442&do=blog&id=495
页: [1]
查看完整版本: 求助,ubuntu 20 安装 qt 4.8.7 ,编译时的问题