我尝试将一个包添加到使用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.in
和dummypgm.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))
或什么?
答案 0 :(得分:5)
您使用的是Qt4还是Qt5?您的package/dummypgm/Config.in
其中一个depends on
应该dummypgm.mk
,DUMMYPGM_DEPENDENCIES = qt
应该有DUMMYPGM_DEPENDENCIES = qt5base
或$(QT_QMAKE)
。
我的直觉是你正在使用Qt5。在这种情况下,您不应该致电$(QT5_QMAKE)
,而是{{1}}。
查看http://git.buildroot.net/buildroot/tree/package/qextserialport/qextserialport.mk示例。请注意,此示例同时支持Qt4和Qt5,可能在您的情况下,您只需要其中一个。
另外,你应该真正订阅Buildroot邮件列表,你会得到比这里更多的答案。