Building Qt Creator
Qt Creator is the preferred IDE for all C++ development at SPT. Compiling Qt Creator 2.5.2 requires a few changes to the source files to account for the differences between system libraries available on Linux and Solaris.
The qmake file that generates the qtcreator_process_stub application has a configuration for solaris, however the pattern specified is not matched on OpenIndiana. In particular the pattern should be solaris* and not solaris-.* as specified in the project file.
Change solaris-.* to solaris* in process_stubs.pro (line 17)
vi src/libs/utils/process_stub.pro 17 solaris*: LIBS += -lsocket
The virtualserialdevice_posix class does not compile due to two missing items. The first of them is a missing constant, which for Solaris is in the sys/filio.h include file which needs to be included. The second is a missing cfmakeraw function which needs to be created. Since this function is used only in the virtualserialdevice_posix class, we decided to implement the missing function as a private method of the class.
Edit src/shared/symbianutils/virtualserialdevice.h and add a private cfmakeraw function.
vi src/shared/symbianutils/virtualserialdevice.h
39 40 #include
Edit src/shared/symbianutils/virtualserialdevice_posix.cpp. Add the missing cfmakeraw method implementation and an include for sys/filio.h to bring in missing FIONREAD constant value.
39 #include
The next step is to enable the qmlprojectmanager plugin. The qmake project file configuration seems to lead to this plugin project being excluded with the Solaris Qt configuration. We just add the subdirs project to the plugins.pro file.
vi src/plugins/plugins.pro 47 plugin_qmlprojectmanager \
Note that this line originally occurs at line 63 in the project file within the contains(QT_CONFIG, declarative) block.
We also need to enable the posix timer header include while building botan in the src.pro file. Add a “|solaris*” to lines 287, and 571.
vi src/libs/3rdparty/botan/src/src.pro 287 linux*.g++*|freebsd*.g++*|solaris* { 571 linux*|freebsd*|solaris* {
With these changes Qt Creator 2.5.2 builds and links on Solaris 11.