Re: [Interest] Qt Application - Disabling AVX/AVX2
Kind regards, Robert Iakobashvili On Wed, Apr 22, 2020 at 6:40 PM coroberti . wrote: > > On Wed, Apr 22, 2020 at 6:35 PM Allan Sandfeld Jensen > wrote: > > > > On Mittwoch, 22. April 2020 17:29:56 CEST coroberti . wrote: > > > On Wed, Apr 22, 2020 at 6:17 PM Thiago Macieira > > > > > > wrote: > > > > On Tuesday, 21 April 2020 14:26:13 PDT coroberti . wrote: > > > > > Hi, > > > > > Is it enough to define: > > > > > > > > > > QMAKE_CFLAGS -= -arch:AVX -arch:AVX2 > > > > > QMAKE_CXXFLAGS -= -arch:AVX -arch:AVX2 > > > > > > > > > > to ensure that compilation by QtCreator with Qt-5.14-MSVC Windows > > > > > will not compile with such optimization flags even if avx and avx2 > > > > > instructions have not been disabled in Qt-library itself? > > > > > > > > Since those options aren't added to the CFLAGS or CXXFLAGS in the first > > > > place, by default what you're tryng to do is a no-op. > > > > Why do you think there are AVX instructions in your binary? And how did > > > > you > > > > turn them on in the first place? > > > > Thiago Macieira - thiago.macieira (AT) intel.com > > > > > > > > Software Architect - Intel System Software Products > > > > > > Thank you for your reply. > > > > > > Building 5.14.2, I was alerted by report from config that avx > > > instructions are enabled. > > > > > > Clear, I need to investigate it more. > > > > > Probably support for them is enabled, but not turned on. That is what we do > > in > > qtbase, build only some files with AVX enabled and switch to them on at > > runtime. > > > > 'Allan > > > Thanks, Allan. > > Perhaps, like Microsoft, AVX optimized functions will be used only if > runtime support by CPU detected. > > Kind regards, > Robert I've seen it. It's not just a good job, it's a fantastically great job done in qtbase. It even navigates thru the mess of compiler versions/issues. Thanks, Thiago and Allan! Kind regards, Robert ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Customizing ui/rcc compiler in qmake
21.04.2020, 21:52, "Patrick Stinson" : > Sorry, I meant uic not rcc. > >> On Apr 21, 2020, at 10:14 AM, Patrick Stinson wrote: >> >> Is there a way to customize the ui compiler to use a command other than rcc? >> >> For example, I am trying to set up my pyqt5 project using only qmake and >> want it to use the command pyrcc5 instead of rcc, and with a few custom >> command line arguments. You may want to try setting QMAKE_UIC and QMAKE_UIC_FLAGS qmake variables -- Regards, Konstantin ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Config errors while configuring Qt 5.12.8 LTS on ubuntu
Thanks a lot for your mail..It worked after installing all dependencies with apt-get build-dep qt5-default and config clean. However, QtWebegine module is not build. When qmake(using installed default path) is run on QtWebengine directory, it throws below error and no config.log is generated. ubuntu@ubuntu:~/qt-everywhere-src-5.12.8/qtwebengine$ qmake Cannot read /home/ubuntu/qt-everywhere-src-5.12.8/qtwebengine/src/core/qtwebenginecore-config.pri: No such file or directory Project ERROR: Could not find feature webengine-v8-snapshot-support. Any suggestions? Best Regards, Ramakanth On Wed, Apr 22, 2020 at 8:52 PM Thiago Macieira wrote: > On Tuesday, 21 April 2020 10:29:19 PDT Ramakanth Kesireddy wrote: > > ERROR: Feature 'xcb' was enabled, but the pre-condition 'features.thread > && > > features.xkbcommon && libs.xcb' failed. > > > > ERROR: Feature 'system-freetype' was enabled, but the pre-condition > > 'features.freetype && libs.freetype' failed. > > > > ERROR: Feature 'fontconfig' was enabled, but the pre-condition > > '!config.msvc && features.system-freetype && libs.fontconfig' failed. > > > > Let me know if am missing any dependencies in this regard. > > You're missing xkbcommon, freetype, at least, possibly xcb and fontconfig > too. > > xkbcommon >= 0.5.0 > freetype >= 2.2 > xcb >= 1.11 > > -- > Thiago Macieira - thiago.macieira (AT) intel.com > Software Architect - Intel System Software Products > > > > ___ > Interest mailing list > Interest@qt-project.org > https://lists.qt-project.org/listinfo/interest > ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
[Interest] Qt Creator Application Output window
Using Qt Creator 4.11.1 on Mac OS 10.14.6 with an Address Sanitizer build of our application. As y'all may know, if you hit a problem in an Address Sanitizer build, the output from AS can be quite extensive. But very useful! Unfortunately, in the environment summarized above, the Application Output view in Qt Creator often fails to flush the output to the display, making it impossible to get all that useful information. See sample output copied from a recent run below. Looks like a buffering issue? 1) Is there a work-around? Some way to force the output to flush to the display? 2) Do others see this too? -John Weeks = ==2501==ERROR: AddressSanitizer: heap-use-after-free on address 0x60300112fe40 at pc 0x0001052ca5ac bp 0x7ffeefbfa430 sp 0x7ffeefbfa428 READ of size 8 at 0x60300112fe40 thread T0 2020-04-22 09:14:45.998305-0700 atos[2944:31382] examining /Users/USER/Documents/*/Igor64.app/Contents/MacOS/Igor64 [2501] 2020-04-22 09:14:46.168427-0700 atos[2945:31394] examining /Users/USER/Documents/*/Igor64.app/Contents/MacOS/Igor64 [2501] #0 0x1052ca5ab in GetRawWaveUnits(waveHdr**, int, char*, int) WaveUnits.cpp:203 #1 0x1052ca7d8 in GetWaveUnits(waveHdr**, int, char*, int) WaveUnits.cpp:263 #2 0x104538c2e in GetUnits(std::__1::shared_ptr, char*) axislabel.cpp:116 #3 0x1044ad071 in IsDateAxis(std::__1::shared_ptr) axis.cpp:6000 #4 0x104c0d95b in SetAxisInfo(grafRec*, std::__1::shared_ptr, int) plotdata.cpp:2559 #5 0x104c173a2 in UpdateGrafAxes(grafRec*, int) plotdata.cpp:2979 #6 0x104c1f714 in UpdateGraf(grafRec*) plotdata.cpp:3459 #7 0x104c2342c in DoUpdtDisplay(int) plotdata.cpp:3706 #8 0x104c22cb7 in UpdtDisplay(int) plotdata.cpp:3761 #9 0x1002190e1 in IgorAppObject::doIdleEvent(bool) IgorAppObject.cpp:4222 #10 0x100217a98 in IgorAppObject::timerEvent(QTimerEvent*) IgorAppObject.cpp:3704 #11 0x117dec5e5 in QObject::event(QEvent*) qobject.cpp:1228 #12 0x11752211a in QGuiApplication::event(QEvent*) (QtGui:x86_64+0x3011a) #13 0x116d08802 in QApplication::event(QEvent*) qapplication.cpp:2022 #14 0x100217474 in IgorAppObject::event(QEvent*) IgorAppObject.cpp:3697 #15 0x116d09fdc in QApplicationPrivate::notify_helper(QObject*, QEvent*) qapplication.cpp:3722 #16 0x116d0b347 in QApplication::notify(QObject*, QEvent*) qapplication.cpp #17 0x1001ff3ca in IgorAppObject::notify(QObject*, QEvent*) IgorAppObject.cpp:914 #18 0x117dc3563 in QCoreApplication::notifyInternal2(QObject*, QEvent*) qcoreapplication.cpp:1024 #19 0x117e19313 in QTimerInfoList::activateTimers() qcoreapplication.h:233 #20 0x11f0fe261 in QCocoaEventDispatcherPrivate::activateTimersSourceCallback(void*) qcocoaeventdispatcher.mm:124 #21 0x7fff460bce32 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ (CoreFoundation:x86_64h+0x57e32) #22 0x7fff460bcdd8 in __CFRunLoopDoSource0 (CoreFoundation:x86_64h+0x57dd8) #23 0x7fff460a079a in __CFRunLoopDoSources0 (CoreFoundation:x86_64h+0x3b79a) #24 0x7fff4609fd64 in __CFRunLoopRun (CoreFoundation:x86_64h+0x3ad64) #25 0x7fff4609f66d in CFRunLoopRunSpecific (CoreFoundation:x86_64h+0x3a66d) #26 0x7fff452fe1aa in RunCurrentEventLoopInMode (HIToolbox:x86_64+0xb1aa) #27 0x7fff452fdee4 in ReceiveNextEventCommon (HIToolbox:x86_64+0xaee4) #28 0x7fff452fdc75 in _BlockUntilNextEventMatchingListInModeWithFilter (HIToolbox:x86_64+0xac75) #29 0x7fff4369577c in _DPSNextEvent (AppKit:x86_64+0x1a77c) #30 0x7fff4369446a in -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] (AppKit:x86_64+0x1946a) #31 0x7fff ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Qt Application - Disabling AVX/AVX2
On Wed, Apr 22, 2020 at 6:35 PM Allan Sandfeld Jensen wrote: > > On Mittwoch, 22. April 2020 17:29:56 CEST coroberti . wrote: > > On Wed, Apr 22, 2020 at 6:17 PM Thiago Macieira > > > > wrote: > > > On Tuesday, 21 April 2020 14:26:13 PDT coroberti . wrote: > > > > Hi, > > > > Is it enough to define: > > > > > > > > QMAKE_CFLAGS -= -arch:AVX -arch:AVX2 > > > > QMAKE_CXXFLAGS -= -arch:AVX -arch:AVX2 > > > > > > > > to ensure that compilation by QtCreator with Qt-5.14-MSVC Windows > > > > will not compile with such optimization flags even if avx and avx2 > > > > instructions have not been disabled in Qt-library itself? > > > > > > Since those options aren't added to the CFLAGS or CXXFLAGS in the first > > > place, by default what you're tryng to do is a no-op. > > > Why do you think there are AVX instructions in your binary? And how did > > > you > > > turn them on in the first place? > > > Thiago Macieira - thiago.macieira (AT) intel.com > > > > > > Software Architect - Intel System Software Products > > > > Thank you for your reply. > > > > Building 5.14.2, I was alerted by report from config that avx > > instructions are enabled. > > > > Clear, I need to investigate it more. > > > Probably support for them is enabled, but not turned on. That is what we do in > qtbase, build only some files with AVX enabled and switch to them on at > runtime. > > 'Allan > Thanks, Allan. Perhaps, like Microsoft, AVX optimized functions will be used only if runtime support by CPU detected. Kind regards, Robert ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Qt Application - Disabling AVX/AVX2
On Mittwoch, 22. April 2020 17:29:56 CEST coroberti . wrote: > On Wed, Apr 22, 2020 at 6:17 PM Thiago Macieira > > wrote: > > On Tuesday, 21 April 2020 14:26:13 PDT coroberti . wrote: > > > Hi, > > > Is it enough to define: > > > > > > QMAKE_CFLAGS -= -arch:AVX -arch:AVX2 > > > QMAKE_CXXFLAGS -= -arch:AVX -arch:AVX2 > > > > > > to ensure that compilation by QtCreator with Qt-5.14-MSVC Windows > > > will not compile with such optimization flags even if avx and avx2 > > > instructions have not been disabled in Qt-library itself? > > > > Since those options aren't added to the CFLAGS or CXXFLAGS in the first > > place, by default what you're tryng to do is a no-op. > > Why do you think there are AVX instructions in your binary? And how did > > you > > turn them on in the first place? > > Thiago Macieira - thiago.macieira (AT) intel.com > > > > Software Architect - Intel System Software Products > > Thank you for your reply. > > Building 5.14.2, I was alerted by report from config that avx > instructions are enabled. > > Clear, I need to investigate it more. > Probably support for them is enabled, but not turned on. That is what we do in qtbase, build only some files with AVX enabled and switch to them on at runtime. 'Allan ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Crash when signal fires
> On Apr 22, 2020, at 11:19 AM, Thiago Macieira > wrote: > > On Tuesday, 21 April 2020 17:09:45 PDT Ben Haller via Interest wrote: >> Unfortunately, I’m on macOS 10.15.3 and Valgrind is not there yet (I think >> at present they have “preliminary” support for macOS 10.13). > > Then install a Linux VM and use Valgrind there. Valgrind is useful enough to > warrant a VM just for it. Ah, that is a good idea! I shall do so. >> I suspect this is a really dumb question, but what is “ASAN”? Is that >> another Valgrind-like tool? > > -fsanitize=address in your compilation and linking flags. > > With qmake, you can also get that by doing: > > CONFIG += sanitizer sanitize_address Aha, very interesting. I’ll try this as well. Thanks for the help. Cheers, -B. Benjamin C. Haller Messer Lab Cornell University ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Crash when signal fires
> On Apr 22, 2020, at 11:17 AM, Thiago Macieira > wrote: > > On Tuesday, 21 April 2020 16:44:19 PDT Ben Haller via Interest wrote: >>connect(qApp, ::focusChanged, [this]() { >> updateUIEnabling(); }); > > Your object probably outlived QApplication. Other way around, right? > Add a third argument of "this" to the connect() call. Yes, Giuseppe D’Angelo set me on the right path on this, and I’ve just gone through all the connect() calls in my app and made them all safe. Thanks! Cheers, -B. Benjamin C. Haller Messer Lab Cornell University ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Qt Application - Disabling AVX/AVX2
On Wed, Apr 22, 2020 at 6:17 PM Thiago Macieira wrote: > > On Tuesday, 21 April 2020 14:26:13 PDT coroberti . wrote: > > Hi, > > Is it enough to define: > > > > QMAKE_CFLAGS -= -arch:AVX -arch:AVX2 > > QMAKE_CXXFLAGS -= -arch:AVX -arch:AVX2 > > > > to ensure that compilation by QtCreator with Qt-5.14-MSVC Windows > > will not compile with such optimization flags even if avx and avx2 > > instructions have not been disabled in Qt-library itself? > Since those options aren't added to the CFLAGS or CXXFLAGS in the first place, > by default what you're tryng to do is a no-op. > Why do you think there are AVX instructions in your binary? And how did you > turn them on in the first place? > Thiago Macieira - thiago.macieira (AT) intel.com > Software Architect - Intel System Software Products Thank you for your reply. Building 5.14.2, I was alerted by report from config that avx instructions are enabled. Clear, I need to investigate it more. Thanks, Robert ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Crash when signal fires
On Tuesday, 21 April 2020 17:09:45 PDT Ben Haller via Interest wrote: > Unfortunately, I’m on macOS 10.15.3 and Valgrind is not there yet (I think > at present they have “preliminary” support for macOS 10.13). Then install a Linux VM and use Valgrind there. Valgrind is useful enough to warrant a VM just for it. > I suspect this is a really dumb question, but what is “ASAN”? Is that > another Valgrind-like tool? -fsanitize=address in your compilation and linking flags. With qmake, you can also get that by doing: CONFIG += sanitizer sanitize_address -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel System Software Products ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Crash when signal fires
On Tuesday, 21 April 2020 16:44:19 PDT Ben Haller via Interest wrote: > connect(qApp, ::focusChanged, [this]() { > updateUIEnabling(); }); Your object probably outlived QApplication. Add a third argument of "this" to the connect() call. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel System Software Products ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Config errors while configuring Qt 5.12.8 LTS on ubuntu
On Tuesday, 21 April 2020 10:29:19 PDT Ramakanth Kesireddy wrote: > ERROR: Feature 'xcb' was enabled, but the pre-condition 'features.thread && > features.xkbcommon && libs.xcb' failed. > > ERROR: Feature 'system-freetype' was enabled, but the pre-condition > 'features.freetype && libs.freetype' failed. > > ERROR: Feature 'fontconfig' was enabled, but the pre-condition > '!config.msvc && features.system-freetype && libs.fontconfig' failed. > > Let me know if am missing any dependencies in this regard. You're missing xkbcommon, freetype, at least, possibly xcb and fontconfig too. xkbcommon >= 0.5.0 freetype >= 2.2 xcb >= 1.11 -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel System Software Products ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Qt Application - Disabling AVX/AVX2
On Tuesday, 21 April 2020 14:26:13 PDT coroberti . wrote: > Hi, > Is it enough to define: > > QMAKE_CFLAGS -= -arch:AVX -arch:AVX2 > QMAKE_CXXFLAGS -= -arch:AVX -arch:AVX2 > > to ensure that compilation by QtCreator with Qt-5.14-MSVC Windows > will not compile with such optimization flags even if avx and avx2 > instructions have not been disabled in Qt-library itself? Since those options aren't added to the CFLAGS or CXXFLAGS in the first place, by default what you're tryng to do is a no-op. Why do you think there are AVX instructions in your binary? And how did you turn them on in the first place? -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel System Software Products ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Customizing ui/rcc compiler in qmake
For the record, this seems to have helped: win32 { SIP_PLATFORM = WS_WIN } macx { SIP_PLATFORM = WS_MACX } linux-g++ { SIP_PLATFORM = WS_LINUX } # sip compiler sip_compiler.input = SIP_SOURCE sip_compiler.output = sipAPI${QMAKE_FILE_BASE}.h sip${QMAKE_FILE_BASE}part0.cpp sip${QMAKE_FILE_BASE}part1.cpp sip${QMAKE_FILE_BASE}part2.cpp sip${QMAKE_FILE_BASE}part3.cpp sip${QMAKE_FILE_BASE}part4.cpp sip_compiler.CONFIG = no_link target_predeps dep_lines win32 { sip_compiler.commands = sip -t $$SIP_PLATFORM -I Z:\\dev\\vendor\\sysroot-dev-win-32\\Python-3.6.4\\sip\\PyQt5 -c . -j 5 -P -o ${QMAKE_FILE_NAME} } macx|linux-g++ { sip_compiler.commands = sip -t $$SIP_PLATFORM `python3 get_some_sip_flags.py` -c . -j 5 -P -o ${QMAKE_FILE_NAME} } sip_compiler.variable_out = GENERATED_FILES sip_compiler.name = SIP ${QMAKE_FILE_IN} QMAKE_EXTRA_COMPILERS += sip_compiler target.files = $$TARGET.so target.depends = sip$$TARGETpart0.cpp sip$$TARGETpart1.cpp sip$$TARGETpart2.cpp sip$$TARGETpart3.cpp sip$$TARGETpart4.cpp target.CONFIG = no_check_exist # pyuic5 compiler pyuic5.input = FORMS pyuic5.output = ${QMAKE_FILE_BASE}_form.py pyuic5.dependency_type = TYPE_UI pyuic5.CONFIG = no_link target_predeps dep_lines pyuic5.commands = pyuic5 ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT} pyuic5.variable_out = GENERATED_FILES pyuic5.name = PyUIC5 ${QMAKE_FILE_IN} QMAKE_EXTRA_COMPILERS += pyuic5 #pyrcc5 compiler pyrcc5.input = RESOURCES pyrcc5.output = qrc_${QMAKE_FILE_BASE}.py pyrcc5.dependency_type = TYPE_RCC pyrcc5.CONFIG = no_link target_predeps dep_lines pyrcc5.commands = pyrcc5 ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT} QMAKE_EXTRA_COMPILERS += pyrcc5 > On Apr 21, 2020, at 10:50 AM, Patrick Stinson wrote: > > Sorry, I meant uic not rcc. > >> On Apr 21, 2020, at 10:14 AM, Patrick Stinson wrote: >> >> Is there a way to customize the ui compiler to use a command other than rcc? >> >> For example, I am trying to set up my pyqt5 project using only qmake and >> want it to use the command pyrcc5 instead of rcc, and with a few custom >> command line arguments. >> >> Thanks! > ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] How to get icon theme?
On 21/04/2020 14.57, Matthew Woehlke wrote: How do I determine what icon theme my application is using? QIcon::themeName() just returns an empty string. (But QIcon::fallbackThemeName() says "breeze"!) I am actually using "breeze-dark", and if I don't do anything, I get icons from that theme. I need to know because my application will use its own theme in order to provide additional icons and a consistent look within the application, so I need to be able to kick the system theme down to the fallback theme. (If I leave it as "breeze", I get illegible icons due to my color theme.) Since no one here has answered yet, maybe SO will have better luck? https://stackoverflow.com/questions/61367582 -- Matthew ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest
Re: [Interest] Windows installer for Qt programs
Hello to anyone who replied to my question, thanks a lot for the answers - I will now try to figure what works best for me - probably MSI - we'll see. Best Alex -- http://www.carot.de Email : alexan...@carot.de Tel.: +49 (0)177 5719797 Gesendet: Dienstag, 21. April 2020 um 11:04 Uhr Von: "Yves Maurischat" An: interest@qt-project.org Betreff: Re: [Interest] Windows installer for Qt programs Am 21.04.2020 um 10:55 schrieb alexander golks: ... For Qt itself it may be great, for other (differentyl structured) projects it's often not worth the hassle. ... besides, is there an easy offline upgrade way available now using IFW? Not sure, as I haven't had that requirement yet. In my current project upgrade means: install a new version with a different version number into the same directory, leaving the old one in place (for which I had to go at great lengths to work around the problems I mentioned before, no solution for the registry thing though). Mit freundlichen Grüßen | Kind regards, Yves Maurischat Senior Software Engineer basysKom GmbH Robert-Bosch-Str. 7 | 64293 Darmstadt | Germany Tel: +49 6151 870 589 -144 | Fax: -199 yves.maurisc...@basyskom.com | www.basyskom.com Handelsregister: Darmstadt HRB 9352 Geschaeftsfuehrende Partner: Heike Ziegler, Alexander Sorg ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest ___ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest