Qwt Plug-in for Qt

Qwt Plug-in for Qt Creator Form Designer

Qwt is a third-party add-on library for the Qt SDK that provides some additional widgets for scientific applications (graphs, knobs, etc). It even has a plug-in DLL for bolting itself right into the Qt Creator form designer. Unfortunately, getting that plug-in to work is a little tricky. Here's how I got the plug-in working for me on Windows 7 with Qt SDK v1.1.2 and Qwt v6.0.1:

1. First, download and install Microsoft Visual C++ 2010 Express Edition. You must have the MSVC compiler to build any Qt Creator plug-ins. Why? Because the form designer was compiled by Nokia with MSVC. People have complained about this (see bug report QTSDK-286), but apparently, there are some special API calls they that they can't use from mingw.

2. Next, install the Qt SDK (I used v1.1.2). You can grab archived versions of the Qt software from Nokia's ftp site (ftp://ftp.qt.nokia.com/qtsdk/Qt_SDK_Win_offline_v1_1_2_en.exe). 

I installed with both MSVC and MINGW support. I turned off all the embedded cell phone development tools (simulator, Symbian, etc). 

3. Download and unzip the Qwt v6.0.1 code. If you had previously unzipped it and compiled with mingw, you will need to unzip a fresh copy (at least, I did).

4. Open the "Qt 4.7.3 for Desktop (MSVC 2008)" command prompt from the Qt SDK in your Windows start menu. Run the "vcvars32" batch file from the MSVC installation inside the command prompt to enable access to the MSVC tools. On my Windows 7 system, this was located at C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat. 

I actually edited the "qtenv2.bat" file in "C:\QtSDK\Desktop\Qt\4.7.3\msvc2008\bin" so that it will do that automatically in the future:

echo off
echo Setting up environment for Qt usage...
set QTDIR=C:\QtSDK\Desktop\Qt\4.7.3\msvc2008
set PATH=%QTDIR%\bin;%PATH%

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"

5. Change directory to where you unzipped the "qwt-6.0.1" source code. Run "qmake -spec win32-msvc2010 qwt.pro" first, then "nmake" and wait.

6. After it's compiled, you should have a shiny new plug-in DLL file "qwt_designer_plugin.dll" inside the "qwt-6.0.1\designer\plugins\designer" folder. Copy this file to the Qt Creator form designer plugin folder at "C:\QtSDK\QtCreator\bin\designer\". 

However, the Qwt plugin requires the Qwt library. You must also copy the "qwt.dll" and "qwtmathml.dll" files from "qwt-6.0.1\lib" to the folder where Qt Creator is launched from ("C:\QtSDK\QtCreator\bin"). If you don't, you'll get an error message along the lines of "The specified module cannot be found" when you look at the menu option "Tools -> Form Editor -> About Qt Designer Plugins..." from within Qt Creator (while editing a form). 

7. Open Qt Creator. With any luck, you'll have a new set of Qwt Widgets available inside the form designer:


Comments