0
votes

I'm trying to install QtCreator on RHEL 5.8. I'm using Qt 4.8.6, which was configured using the -static flag. When I run make, I get the following error:

/usr/local/qt-creator-2.7.2-src/src/plugins/find/findplugin.cpp:399: error: ‘qt_plugin_instance_Find’ has not been declared

/usr/local/qt-creator-2.7.2-src/src/libs/aggregation/aggregate.h: In function ‘QList Aggregation::query_all(QObject*) [with T = Find::IFindFilter]’: /usr/local/qt-creator-2.7.2-src/src/libs/extensionsystem/pluginmanager.h:76: instantiated from ‘static QList ExtensionSystem::PluginManager::getObjects() [with T = Find::IFindFilter]’

/usr/local/qt-creator-2.7.2-src/src/plugins/find/findplugin.cpp:223: instantiated from here

/usr/local/qt-creator-2.7.2-src/src/libs/aggregation/aggregate.h:122: warning: lowering visibility of ‘QReadLocker& Aggregation::lock() [with T = Find::IFindFilter]’ to match its type

make[3]: [.obj/release-shared/findplugin.o] Error 1
make[3]: Leaving directory /usr/local/qt-creator-build/src/plugins/find'
make[2]: [sub-find-make_default] Error 2 make[2]: Leaving directory /usr/local/qt-creator-build/src/plugins'
make[1]: [sub-plugins-make_default-ordered] Error 2
make[1]: Leaving directory `/usr/local/qt-creator-build/src'
make: [sub-src-make_default-ordered] Error 2

I've been Googling for a while and can't find anything. I've tried several different versions of QtCreator from 2.5-2.7 and always get the same thing. Any ideas? Thanks.

1

1 Answers

1
votes

I very much doubt that Qt Creator's build system supports a static Qt build, since Qt Creator uses plugins that must dynamically link to the same Qt binary that Qt Creator uses. That's impossible under a staticly built Qt.

So, what you're trying to do is not supported out-of-the-box. Use a dynamic build of Qt. You can have multiple Qt builds installed (into different prefixes), so that's not a problem. At times I have a dozen of them.

It should be, perhaps, possible to compile Qt Creator's plugins as static plugins, using the Q_IMPORT_PLUGIN macro and the related machinery. I don't know offhand if Qt Creator's sources support this out-of-the-box. Perhaps it would be a small modification to get it to work.