未使用 uic 生成 header
No header generated with uic
QtCreator 不想创建我的 ui header 文件。当我在终端输入 uic
时,它告诉我:
louis@Krusty:~$ uic
uic: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/uic': No such file or directory
我在主文件夹中安装了 Qt5,Qt 可以毫无问题地识别它。在设置中,它位于 good 文件夹中。通常它应该没有任何问题!但是它有,所以我必须手动创建我的表格:
./.Qt/5.5/gcc_64/bin/uic Documents/lab/Qt/OpenPlane/AirplaneEditor.ui -o ui_AirplaneEditor.h
这是我的 QMake :
QT += widgets
SOURCES += \
main.cpp \
Airplane.cpp \
AirplaneOverview.cpp \
AirplaneManager.cpp \
AirplaneEditor.cpp
HEADERS += \
Airplane.h \
AirplaneOverview.h \
AirplaneManager.h \
AirplaneEditor.h \
ui_AirplaneEditor.h # By hand
FORMS += \
AirplaneEditor.ui
如果您需要更多信息,请问我!
来自@bibi 的有用评论:
看起来您的 PATH 不包括 ~/.Qt/5.5/gcc_64/bin/
,and/or 不在常规路径之前。正如bibi所说,“which qmake uic
”的输出是什么?
在终端上输入:
export PATH=$HOME/.Qt/5.5/gcc_64/bin/:$PATH
(可能需要其他一些路径)然后从这个终端开始 运行。
如果它成功了,请将此 PATH 添加到您 ~/.bashrc
以使其永久化。
但我认为根本问题是你为什么要手动安装 Qt5??? (为什么在隐藏目录中?)我确实需要自定义版本的 Qt,它不会安装在您的系统文件中,更好的安装位置可能是 /opt
。加上上面解释的匹配 PATH
设置。
如果您不需要自定义 Qt,每个 Linux 发行版都可以愉快地安装 Qt4 和 Qt5,然后您可以选择要在 .pro
文件中使用的版本,如下所示:
How to check the selected version of Qt in a .pro file?
编辑:
"I installed it with the official installer from Qt. How should I
install it on Ubuntu 15.10?"
常规方法绝对不是从某些 Qt 的存档中安装它。你有 packagers/maintainers 的发行版,你应该相信他们。所以对于 Qt4 安装来说,它将是 sudo apt-get install qt-sdk
。对于 Qt5 我不知道,但是 apt-cache search qt5
and/or 谷歌搜索应该可以解决问题。
编辑 2:
对于 Qt5 安装,至少在我的 virtualbox Ubuntu 14-04(我 运行 Debian)上,基本包应该是 qtbase5-dev
:
jbmaillet@jbmaillet-VirtualBox:~$ apt-cache show qtbase5-dev
Package: qtbase5-dev
Priority: optional
Section: libdevel
Installed-Size: 15557
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Architecture: amd64
Source: qtbase-opensource-src
Version: 5.2.1+dfsg-1ubuntu14.3
Depends: libgl1-mesa-dev | libgl-dev, libgles2-mesa-dev | libgles2-dev, libglu1-mesa-dev | libglu-dev, libqt5concurrent5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5core5a (= 5.2.1+dfsg-1ubuntu14.3), libqt5dbus5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5gui5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5network5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5printsupport5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5sql5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5test5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5widgets5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5xml5 (= 5.2.1+dfsg-1ubuntu14.3), qt5-qmake (= 5.2.1+dfsg-1ubuntu14.3), qtbase5-dev-tools (= 5.2.1+dfsg-1ubuntu14.3), qtchooser
Pre-Depends: dpkg (>= 1.15.6~)
Recommends: libqt5opengl5-dev (= 5.2.1+dfsg-1ubuntu14.3)
Suggests: libmysqlclient-dev, libpq-dev, libsqlite3-dev, unixodbc-dev
Filename: pool/main/q/qtbase-opensource-src/qtbase5-dev_5.2.1+dfsg-1ubuntu14.3_amd64.deb
Size: 1643142
MD5sum: 151188294e4ff90f89b97c4a54c30c62
SHA1: 5b78fac44f570852a1feb1a7c56ab1dd1a0aa7dc
SHA256: dc66f32450d2b38766d480982c4c17849cac820d461b7b2bb699045323eb91e6
Description-en: Qt 5 base development files
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
.
This package contains the header development files used for building Qt 5
applications.
Description-md5: b1a4d90909152c53a52db6116d1f19f9
Multi-Arch: same
Homepage: http://qt-project.org/
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Supported: 9m
Package: qtbase5-dev
Priority: optional
Section: libdevel
Installed-Size: 15561
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Architecture: amd64
Source: qtbase-opensource-src
Version: 5.2.1+dfsg-1ubuntu14
Depends: libgl1-mesa-dev | libgl-dev, libgles2-mesa-dev | libgles2-dev, libglu1-mesa-dev | libglu-dev, libqt5concurrent5 (= 5.2.1+dfsg-1ubuntu14), libqt5core5a (= 5.2.1+dfsg-1ubuntu14), libqt5dbus5 (= 5.2.1+dfsg-1ubuntu14), libqt5gui5 (= 5.2.1+dfsg-1ubuntu14), libqt5network5 (= 5.2.1+dfsg-1ubuntu14), libqt5printsupport5 (= 5.2.1+dfsg-1ubuntu14), libqt5sql5 (= 5.2.1+dfsg-1ubuntu14), libqt5test5 (= 5.2.1+dfsg-1ubuntu14), libqt5widgets5 (= 5.2.1+dfsg-1ubuntu14), libqt5xml5 (= 5.2.1+dfsg-1ubuntu14), qt5-qmake (= 5.2.1+dfsg-1ubuntu14), qtbase5-dev-tools (= 5.2.1+dfsg-1ubuntu14), qtchooser
Pre-Depends: dpkg (>= 1.15.6~)
Recommends: libqt5opengl5-dev (= 5.2.1+dfsg-1ubuntu14)
Suggests: libmysqlclient-dev, libpq-dev, libsqlite3-dev, unixodbc-dev
Filename: pool/main/q/qtbase-opensource-src/qtbase5-dev_5.2.1+dfsg-1ubuntu14_amd64.deb
Size: 1645270
MD5sum: 5a34acc6541815677e4c352e434b1bec
SHA1: a1944357caa86a218909eb5323ed2d94fa7b77fe
SHA256: dade051dcb2f3dac311bfcfe552513d74be14b5d638946980d495c84310d866b
Description-en: Qt 5 base development files
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
.
This package contains the header development files used for building Qt 5
applications.
Description-md5: b1a4d90909152c53a52db6116d1f19f9
Multi-Arch: same
Homepage: http://qt-project.org/
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Supported: 9m
查看它将安装的依赖项列表:qt5-qmake、qtbase5-dev-tools、库等
所以 apt-get install
那个,加上后者可能还有几个包,具体取决于您要开发的 Qt5 应用程序的类型(例如带有 dbus 或这个或那个的 Qt5)。
我遇到了同样的问题。我的所有 Qt5 软件包都已安装,但在我的 linux (CentOS) 系统上找不到 uic
,但 uic-qt5
是!
所以执行以下对我有用:
$ uic-qt5 AirplaneEditor.ui -o ui_airplaneeditor.h
QtCreator 不想创建我的 ui header 文件。当我在终端输入 uic
时,它告诉我:
louis@Krusty:~$ uic
uic: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/uic': No such file or directory
我在主文件夹中安装了 Qt5,Qt 可以毫无问题地识别它。在设置中,它位于 good 文件夹中。通常它应该没有任何问题!但是它有,所以我必须手动创建我的表格:
./.Qt/5.5/gcc_64/bin/uic Documents/lab/Qt/OpenPlane/AirplaneEditor.ui -o ui_AirplaneEditor.h
这是我的 QMake :
QT += widgets
SOURCES += \
main.cpp \
Airplane.cpp \
AirplaneOverview.cpp \
AirplaneManager.cpp \
AirplaneEditor.cpp
HEADERS += \
Airplane.h \
AirplaneOverview.h \
AirplaneManager.h \
AirplaneEditor.h \
ui_AirplaneEditor.h # By hand
FORMS += \
AirplaneEditor.ui
如果您需要更多信息,请问我!
来自@bibi 的有用评论:
看起来您的 PATH 不包括 ~/.Qt/5.5/gcc_64/bin/
,and/or 不在常规路径之前。正如bibi所说,“which qmake uic
”的输出是什么?
在终端上输入:
export PATH=$HOME/.Qt/5.5/gcc_64/bin/:$PATH
(可能需要其他一些路径)然后从这个终端开始 运行。
如果它成功了,请将此 PATH 添加到您 ~/.bashrc
以使其永久化。
但我认为根本问题是你为什么要手动安装 Qt5??? (为什么在隐藏目录中?)我确实需要自定义版本的 Qt,它不会安装在您的系统文件中,更好的安装位置可能是 /opt
。加上上面解释的匹配 PATH
设置。
如果您不需要自定义 Qt,每个 Linux 发行版都可以愉快地安装 Qt4 和 Qt5,然后您可以选择要在 .pro
文件中使用的版本,如下所示:
How to check the selected version of Qt in a .pro file?
编辑:
"I installed it with the official installer from Qt. How should I install it on Ubuntu 15.10?"
常规方法绝对不是从某些 Qt 的存档中安装它。你有 packagers/maintainers 的发行版,你应该相信他们。所以对于 Qt4 安装来说,它将是 sudo apt-get install qt-sdk
。对于 Qt5 我不知道,但是 apt-cache search qt5
and/or 谷歌搜索应该可以解决问题。
编辑 2:
对于 Qt5 安装,至少在我的 virtualbox Ubuntu 14-04(我 运行 Debian)上,基本包应该是 qtbase5-dev
:
jbmaillet@jbmaillet-VirtualBox:~$ apt-cache show qtbase5-dev
Package: qtbase5-dev
Priority: optional
Section: libdevel
Installed-Size: 15557
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Architecture: amd64
Source: qtbase-opensource-src
Version: 5.2.1+dfsg-1ubuntu14.3
Depends: libgl1-mesa-dev | libgl-dev, libgles2-mesa-dev | libgles2-dev, libglu1-mesa-dev | libglu-dev, libqt5concurrent5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5core5a (= 5.2.1+dfsg-1ubuntu14.3), libqt5dbus5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5gui5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5network5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5printsupport5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5sql5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5test5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5widgets5 (= 5.2.1+dfsg-1ubuntu14.3), libqt5xml5 (= 5.2.1+dfsg-1ubuntu14.3), qt5-qmake (= 5.2.1+dfsg-1ubuntu14.3), qtbase5-dev-tools (= 5.2.1+dfsg-1ubuntu14.3), qtchooser
Pre-Depends: dpkg (>= 1.15.6~)
Recommends: libqt5opengl5-dev (= 5.2.1+dfsg-1ubuntu14.3)
Suggests: libmysqlclient-dev, libpq-dev, libsqlite3-dev, unixodbc-dev
Filename: pool/main/q/qtbase-opensource-src/qtbase5-dev_5.2.1+dfsg-1ubuntu14.3_amd64.deb
Size: 1643142
MD5sum: 151188294e4ff90f89b97c4a54c30c62
SHA1: 5b78fac44f570852a1feb1a7c56ab1dd1a0aa7dc
SHA256: dc66f32450d2b38766d480982c4c17849cac820d461b7b2bb699045323eb91e6
Description-en: Qt 5 base development files
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
.
This package contains the header development files used for building Qt 5
applications.
Description-md5: b1a4d90909152c53a52db6116d1f19f9
Multi-Arch: same
Homepage: http://qt-project.org/
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Supported: 9m
Package: qtbase5-dev
Priority: optional
Section: libdevel
Installed-Size: 15561
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Architecture: amd64
Source: qtbase-opensource-src
Version: 5.2.1+dfsg-1ubuntu14
Depends: libgl1-mesa-dev | libgl-dev, libgles2-mesa-dev | libgles2-dev, libglu1-mesa-dev | libglu-dev, libqt5concurrent5 (= 5.2.1+dfsg-1ubuntu14), libqt5core5a (= 5.2.1+dfsg-1ubuntu14), libqt5dbus5 (= 5.2.1+dfsg-1ubuntu14), libqt5gui5 (= 5.2.1+dfsg-1ubuntu14), libqt5network5 (= 5.2.1+dfsg-1ubuntu14), libqt5printsupport5 (= 5.2.1+dfsg-1ubuntu14), libqt5sql5 (= 5.2.1+dfsg-1ubuntu14), libqt5test5 (= 5.2.1+dfsg-1ubuntu14), libqt5widgets5 (= 5.2.1+dfsg-1ubuntu14), libqt5xml5 (= 5.2.1+dfsg-1ubuntu14), qt5-qmake (= 5.2.1+dfsg-1ubuntu14), qtbase5-dev-tools (= 5.2.1+dfsg-1ubuntu14), qtchooser
Pre-Depends: dpkg (>= 1.15.6~)
Recommends: libqt5opengl5-dev (= 5.2.1+dfsg-1ubuntu14)
Suggests: libmysqlclient-dev, libpq-dev, libsqlite3-dev, unixodbc-dev
Filename: pool/main/q/qtbase-opensource-src/qtbase5-dev_5.2.1+dfsg-1ubuntu14_amd64.deb
Size: 1645270
MD5sum: 5a34acc6541815677e4c352e434b1bec
SHA1: a1944357caa86a218909eb5323ed2d94fa7b77fe
SHA256: dade051dcb2f3dac311bfcfe552513d74be14b5d638946980d495c84310d866b
Description-en: Qt 5 base development files
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
.
This package contains the header development files used for building Qt 5
applications.
Description-md5: b1a4d90909152c53a52db6116d1f19f9
Multi-Arch: same
Homepage: http://qt-project.org/
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Supported: 9m
查看它将安装的依赖项列表:qt5-qmake、qtbase5-dev-tools、库等
所以 apt-get install
那个,加上后者可能还有几个包,具体取决于您要开发的 Qt5 应用程序的类型(例如带有 dbus 或这个或那个的 Qt5)。
我遇到了同样的问题。我的所有 Qt5 软件包都已安装,但在我的 linux (CentOS) 系统上找不到 uic
,但 uic-qt5
是!
所以执行以下对我有用:
$ uic-qt5 AirplaneEditor.ui -o ui_airplaneeditor.h