面对交叉编译maliit框架源代码中的问题。
inputcontextdbusaddress.cpp: In member function 'virtual void Maliit::InputContext::DBus::DynamicAddress::get()':
inputcontextdbusaddress.cpp:50: error: 'QDBusMessage' was not declared in this scope
inputcontextdbusaddress.cpp:50: error: expected ';' before 'message'
inputcontextdbusaddress.cpp:52: error: 'message' was not declared in this scope
inputcontextdbusaddress.cpp:54: error: 'QDBusConnection' has not been declared
inputcontextdbusaddress.cpp: In member function 'void Maliit::InputContext::DBus::DynamicAddress::successCallback(const QDBusVariant&)':
inputcontextdbusaddress.cpp:62: error: invalid use of incomplete type 'const struct QDBusVariant'
inputcontextdbusaddress.h:21: error: forward declaration of 'const struct QDBusVariant'
inputcontextdbusaddress.cpp: In member function 'void Maliit::InputContext::DBus::DynamicAddress::errorCallback(const QDBusError&)':
inputcontextdbusaddress.cpp:67: error: invalid use of incomplete type 'const struct QDBusError'
inputcontextdbusaddress.h:22: error: forward declaration of 'const struct QDBusError'
已经检查了循环依赖,它也包括QDBus。每件事看起来都不错。如果有人遇到此类问题,请让我知道或分享您的想法我们如何解决此问题
答案 0 :(得分:0)
我自己解决了这个问题。问题来了,因为没有启用QtDBus模块。 要启用QtDBus模块,您需要使用-dbus
运行configure./ configure -embedded arm -xplatform qws / linux-powerpc-g ++ -dbus ......
但是在启用之前你应该有libdbus-1,否则你会得到以下消息。
无法启用QtDBus模块,因为找不到libdbus-1版本0.93。 打开详细消息(-v)到./configure以查看最终报告。 如果您认为此消息有误,则可以使用继续 切换( - 继续)到./configure继续。
为此你应该下载dbus-1.2.4.6.tar.gz和expat-2.0.1.tar.gz
交叉编译expat
交叉编译dbus
用dbus交叉编译Qt