Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
error: Unknown module(s) in QT: uiplugin after building from source
Hello, i'm trying to build a custom QtDesigner plugin for MIPS architecture. I've downloaded a cross-compiler and built Qt 5.3.2 from source. My OS is Centos7. Configure command:
./configure -opensource -release -confirm-license -platform linux-g++-64 -xplatform linux-mipsel-g++ -qt-xcb -prefix /home/prog/CrossCompile/Qt5.3.2mipsLSB -nomake examples -nomake tests -v
Cross-compilation of my app work fine, but when when i'm trying to cross-compile a custom QtDesigner plugin, i'm getting the error "error: Unknown module(s) in QT: uiplugin".
Maybe i just forgot to add some arguments to configure command?
No, that's because the tools like designer are not built when cross-comping. You're not likely going to use Designer on your target.
dream_captain last edited by dream_captain
@SGaist Thanks for reply.
I've tried to compile every single module in Qt source package(incuding QtTools) using qmake that i've already built with cross-compiler. It didn't help.
Can you please show me a direction of how can i cross-compile my custom QtDesigner plugin?
EDIT:just a thought: If QtDesigner is executing a custom library (plugin) when i start it, there's no way QtDesigner will use a plugin for different architecture. Seems like a problem has no solution? Maybe i just should recompile my plugin as simple shared library and use it. So confused now.
Did you split your plugin in two ? Meaning a library for the actual code and the plugin separately.
@SGaist Sorry, I'm not quite understand. The plugin itself if is a shared library. On Windows the plugin is a DLL, that i can copy into specific Qt directory and make it accesible in QtDesigner.
Ok so you have a single dll that is both the plugin and the library containing the code of your custom widget. The problem is that you are trying to build the plugin for mips while using it with Qt Creator on your desktop computer. That won't work.
You should split it like described here.
@SGaist Thanks. Seems like that is exactly what i need.