我使用sudo apt-get install qt5-default命令在Odroid XU3上安装了qt5-default,并希望使用终端运行qmake-qt5,但打印此命令未知。然后我查看了usr / share / qt5文件夹,发现里面只有doc-foder。我还查看了usr / bin文件夹,只能找到qmake-qt4,但找不到qmake-qt5。当我运行install命令时,我还读到一些库将被安装,所以我认为库不是问题。
接下来,我尝试从此页面https://launchpad.net/ubuntu/trusty/+package/qt5-qmake手动安装qmake-q5t,但是随后我收到一条消息,提示已经安装了较新版本的qmake-qt5。我使用find命令在整个系统中搜索了qmake-qt5,但无法检测到它。
最后,我还尝试使用此处描述的方法添加ubuntu-sdk ppa,网址为https://askubuntu.com/questions/279421/how-can-i-install-qt-5-x-on-12-04-lts,但这也没有解决。
它与我的Odroid或Lubuntu有关系吗?还有其他安装qmake-qt5的方法吗?
我试图编译并使用已经安装的qt4做,这确实使用
qmake-qt4 -project
qmake-qt4
make
./helloworld
Run Code Online (Sandbox Code Playgroud)
我想做同样的事情,但只用qt5
提前致谢
我试图从模板基类继承但是我得到了几个错误,因为我的派生类不是模板类.我也不希望它,我只是想分享一些变量,让派生类实现它们.
//base.h
template <typename T>
class Base
{
public:
explicit Base(QWidget *parent);
~Base();
protected:
QList<T*>* list;
T* selectedObject;
};
//base.cpp
#include "base.h"
template <typename T>
Base<T>::Base(QWidget* parent)
{
}
template <typename T>
Base<T>::~Base()
{
}
//derived.h
namespace Ui
{
class Derived;
}
class Derived: public QWidget, public Base<MyType>
{
Q_OBJECT
public:
explicit Derived(QWidget *parent = 0);
~Derived();
private:
Ui::Derived*ui;
};
//derived.cpp
Derived::Dervied(QWidget* parent) : QWidget(parent), Base<Mytype>(parent)
{
list = new QList<MyType*>();
}
Run Code Online (Sandbox Code Playgroud)
所以我想要从基类实现这个Qlist,但是使用像MyType这样的特定类型参数.我之前在c ++中没有使用模板与继承相结合,我尝试了几件事,但是他们没有成功.
编辑 所以,我尝试下面解释dtbeaver,但后来我得到以下错误信息:未定义引用'Base :: Base()'.我得到了构造函数和解构函数