Anybody ever install commercial Qt license on Jenkins?
I've got a Windows slave (which Jenkins uses under the system account) and it reports that it can't find the license file.
I've copied the .qt-license file to the <WINDOWS>\System32\config\systemprofile directory
I've dropped it in the child directories for local and roaming appdata in a folder named Qt as well
I've rebooted the slave, disconnected and reconnected
Can't find the license when qmake runs:
17:39:25 Error: Qt license file was not found!
17:39:25 Project ERROR: License check failed! Giving up ...
I can't find any information on how this is supposed to work.
I'm using Qt 5.8, which I installed under my local admin account (and of course, everything is fine running under my local admin account...)
I've logged a support ticket, but it takes a day to get a response - hopefully someone is using Jenkins and a commercial license of Qt out there.
Is Qt, on Windows, hiding some license information in the registry and system is unable to access my user directory without elevated privileges? That doesn't sound very Qt, I would expect it to look in %USERPROFILE% and the AppData subdirectories therein.
How are you starting the slave agent ? With which account ?
The slave is controlled via the Jenkins windows service, which runs System.
Did you install Qt for all the users of your Windows machine ?
That was not an option, if I recall correctly, when I installed it earlier today. Also, it finds Qt just fine when running as system, the problem is that qmake fails on the license check.
I don't remember right now, but doesn't the system user also have a home folder ?
@SGaist Yes, it's the <WINDOWS>\System32\config\systemprofile directory
Check this thread on the Qt interest mailing list. It gives some pointers that might help in your case.
@SGaist Thanks, I'll look into that. My efforts with Qt support have gone nowhere fast (which is unusual.) -- UPDATE -- Yeah, that was the first thread I looked into when I ran into this problem originally.
I've dropped that license file all over the Jenkins box, lol, in hopes of it being found, including the hidden 'Default' user directory (and AppData roaming/local/locallow) - no luck.
In the meantime I've resolved this by configuring the Jenkins windows slave service to run under an account I created expressly for Jenkins (a local admin account.) So I'm building fine, it's just a temporary solution though because it's hard to justify modifying 30 build slaves in ways that require all the other developers to re-install their software under this new account.
Anywho - I've a trick or two left (overriding certain environment vars to point places they usually wouldn't) but I thinks it's unlikely it'll work. Might be time to contribute a patch! :)
Why make it an admin user ? Wouldn't a standard one make do ?
Add support for configuring where the license file is ? Sounds good.