[Qt-creator] Ok to skip compiling Qt Creator first when building my plugin in Linux?

Eike Ziller Eike.Ziller at qt.io
Tue May 17 10:11:41 CEST 2016


> On May 17, 2016, at 10:01, Henry Skoglund <fromqt at tungware.se> wrote:
> 
> Nice, thanks for answering!
> 
> BTW, I also now use this simplified plugin deployment on my Mac:
> no need to build Qt Creator anymore, just set IDE_BUILD_TREE to my home directory in my plugin's .pro file (expecting Qt to be installed in vanilla $HOME/Qt)
> 
> One snag though (easily fixed): the script expects the target Qt Creator.app to be in a subdirectory named "bin" so I create an alias in Terminal before compiling ny plugin:
> ln -s Qt bin
> 
> Rgrds Henry
> 
> P.S. This can work even on Windows, but first I need an automated way to create the .lib files from the Qt Creator's dlls. I tested creating a core.lib from core.dll:
> dumpbin/exports core.dll > core.def
> editing away everything but the function names and adding the title "EXPORTS"
> lib /def:core.def /out:core.lib

I’ve got a WIP patch that collects the necessary output of a Qt Creator build, and fixes finding the location of Qt Creator.app on OS X here:
https://codereview.qt-project.org/157413

Br, Eike

> 
> 
> On 2016-05-17 08:02, Eike Ziller wrote:
>> 
>>> On May 15, 2016, at 07:14, Henry Skoglund <fromqt at tungware.se> wrote:
>>> 
>>> Hi,
>>> 
>>> when working in Qt Creator I use my homegrown plugin, built for Qt Creator in Ubuntu, OSX and Windows. It works nicely except when there's a new release of Qt Creator, then you need to download and compile/build Qt Creator (takes about 30 minutes) and then rebuild my plugin for that new version of Qt Creator.
>>> At least it used to take that time, recently (when upgrading to Qt Creator 4.0) I discovered a shortcut for my Qt Creator installation in Ubuntu:
>>> 
>>> In my plugin's .pro file, I changed the IDE_BUILD_TREE env. variable to point to my vanilla Qt Creator installation (e.g. IDE_BUILD_TREE=/home/henry/Qt/Tools/QtCreator).
>>> 
>>> And I could build my plugin just fine, it even got placed in the correct position directly (/home/henry/Qt/Tools/QtCreator/lib/qtcreator/plugins). Restarted Qt Creator and voila, my plugin was up and running in Qt Creator 4.0 in just a few seconds, not 30 minutes of waiting for gcc.
>>> 
>>> So, my question is, is my skipping of waiting for gcc kosher or not? I know this feat is not possible on Windows, because there Visual Studio aborts with "LINK : fatal error LNK1181: cannot open input file 'Core.lib'"
>>> 
>>> On Windows you obviously need to compile to obtain those .lib files, but on Linux, it seems Qt Creator does not require or use .a files? And that the .so files present in ~/Qt/Tools/QtCreator/lib/qtcreator and ~/Qt/Tools/QtCreator/lib/qtcreator/plugins already have all the needed linking information for building my plugin in them?
>>> 
>>> (Forgive my ignorance, I'm kind of Linux noob) /Rgrds Henry
>> 
>> Correct as long as you do not rely on generated files (atm probably only app_version.h).
>> 
>> Br, Eike
>> 
> 
> 

-- 
Eike Ziller
Principal Software Engineer

The Qt Company GmbH
Rudower Chaussee 13
D-12489 Berlin
eike.ziller at qt.io
+123 45 6789012
http://qt.io

Geschäftsführer: Mika Pälsi, Juha Varelius, Tuula Haataja
Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B




More information about the Qt-creator mailing list