使用Buildroot进行Qmake配置

时间:2014-11-24 16:51:19

标签: embedded-linux qmake buildroot

我尝试将一个包添加到使用Qt和Boost的Buildroot。该软件包使用qmake生成一个Makefile,这部分似乎正在工作,但是当我构建说法时出现错误:

Could not find qmake configuration file qws/linux-arm-g++.
Error processing project file: MsgDisplay.pro

我的包裹内容如下:

DummyPgm
├── main.cpp
├── MsgDisplay.pri
├── MsgDisplay.pro
├── MsgDisplay.pro.user
├── MsgHandler.cpp
├── MsgHandler.h
├── MsgServer.cpp
├── MsgServer.h
├── Tcp
│   ├── TcpAddrPort.cpp
│   ├── TcpAddrPort.h
│   ├── TcpServer.cpp
│   ├── TcpServer.h
│   ├── TcpSocket.cpp
│   └── TcpSocket.h
└── Tools
    ├── Banner.cpp
    ├── Banner.h
    ├── IoExt.h
    ├── SeparateArgumentList.cpp
    ├── SeparateArgumentList.h
    └── SysTypes.h

2 directories, 20 files

我添加了一个包目录dummypgm,其中包含Config.indummypgm.mk个文件。文件的内容是:

Config.in:

config BR2_PACKAGE_DUMMYPGM
    bool "dummypgm"
    help
      Foo Software.

      http://www.foo.com

dummypgm.mk:

DUMMYPGM_VERSION = 0.1.0
DUMMYPGM_SOURCE = DummyPgm-$(DUMMYPGM_VERSION).tar.gz

define DUMMYPGM_CONFIGURE_CMDS
    (cd $(@D); $(QT_QMAKE)  MsgDisplay.pro)
endef

define DUMMYPGM_BUILD_CMDS
    $(MAKE) -C $(@D)
endef


$(eval $(generic-package))

由于包是在本地托管的,我只是将DummyPgm-0.1.0.tar.gz放在dl目录中。

我还将以下内容添加到package/Config.in

source "package/dummypgm/Config.in"

我有点迷失为什么这不起作用,如果有人能帮助我,我会非常感激。另外,有没有办法打电话给$(eval $(qmake-package))或什么?

1 个答案:

答案 0 :(得分:5)

您使用的是Qt4还是Qt5?您的package/dummypgm/Config.in其中一个depends on应该dummypgm.mkDUMMYPGM_DEPENDENCIES = qt应该有DUMMYPGM_DEPENDENCIES = qt5base$(QT_QMAKE)

我的直觉是你正在使用Qt5。在这种情况下,您不应该致电$(QT5_QMAKE),而是{{1}}。

查看http://git.buildroot.net/buildroot/tree/package/qextserialport/qextserialport.mk示例。请注意,此示例同时支持Qt4和Qt5,可能在您的情况下,您只需要其中一个。

另外,你应该真正订阅Buildroot邮件列表,你会得到比这里更多的答案。