Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. How can I open openexr image on qt widget
Forum Updated to NodeBB v4.3 + New Features

How can I open openexr image on qt widget

Scheduled Pinned Locked Moved Unsolved General and Desktop
49 Posts 5 Posters 9.8k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S SGaist
    11 Dec 2018, 20:21

    Can you give more details about what you did and what failed ?

    N Offline
    N Offline
    Nathan Miguel
    wrote on 11 Dec 2018, 20:58 last edited by
    #18

    @SGaist I also try to compile without selecting these options python lib and openexr viewer as well as in the image. python was because I could not install the "Faber" and the viewer was because I could not install the fltk tbm

    0_1544561882581_b9d74928-2620-44ed-adbe-646b3994041a-image.png

    1 Reply Last reply
    0
    • S SGaist
      11 Dec 2018, 20:21

      Can you give more details about what you did and what failed ?

      N Offline
      N Offline
      Nathan Miguel
      wrote on 11 Dec 2018, 21:02 last edited by Nathan Miguel 12 Nov 2018, 21:03
      #19

      @SGaist If you have a problem with linux on linux, I would like to install linux on linux, because it is horrible to program on windows in C ++ on my opinion

      S 1 Reply Last reply 11 Dec 2018, 21:54
      0
      • N Nathan Miguel
        11 Dec 2018, 21:02

        @SGaist If you have a problem with linux on linux, I would like to install linux on linux, because it is horrible to program on windows in C ++ on my opinion

        S Offline
        S Offline
        SGaist
        Lifetime Qt Champion
        wrote on 11 Dec 2018, 21:54 last edited by
        #20

        @Nathan-Miguel said in How can I open openexr image on qt widget:

        @SGaist If you have a problem with linux on linux, I would like to install linux on linux, because it is horrible to program on windows in C ++ on my opinion

        Install Linux on Linux ? What do you mean by that ?

        In any case, you don't really need the viewer since you want to use Qt to show the images.

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        N 3 Replies Last reply 11 Dec 2018, 22:22
        1
        • S SGaist
          11 Dec 2018, 21:54

          @Nathan-Miguel said in How can I open openexr image on qt widget:

          @SGaist If you have a problem with linux on linux, I would like to install linux on linux, because it is horrible to program on windows in C ++ on my opinion

          Install Linux on Linux ? What do you mean by that ?

          In any case, you don't really need the viewer since you want to use Qt to show the images.

          N Offline
          N Offline
          Nathan Miguel
          wrote on 11 Dec 2018, 22:22 last edited by VRonin
          #21

          @SGaist sorry for my keyboard and brazil, sometimes it fixes the errors alone, but what I wanted to say and if it would be easier to program this in linux and if you have how to compile windows files direct in linux. But continuing, where I can find this "FLTK_GL_LIBRARY", and about python it seems that cmake is using 2.7 and not the 3.7 to install the python boost.

          CMake Warning at CMakeLists.txt: 143 (message):
             Viewers are currently out of order. Building anyway
          
          
          ILMBASE_PACKAGE_PREFIX = C: / Program Files (x86) / OpenEXR
          INFO, Skipping Python bindings
          OPENEXR_PACKAGE_PREFIX =
          CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
          Please make them or make sure they are set and tested correctly in the CMake files:
          FLTK_GL_LIBRARY
               linked by target "exrdisplay" in directory C: / Git / openexr / OpenEXR_Viewers / exrdisplay
          
          Configuring incomplete, errors occurred!
          See also "C: /Git/openexr/build/CMakeFiles/CMakeOutput.log".
          
          1 Reply Last reply
          0
          • S SGaist
            11 Dec 2018, 21:54

            @Nathan-Miguel said in How can I open openexr image on qt widget:

            @SGaist If you have a problem with linux on linux, I would like to install linux on linux, because it is horrible to program on windows in C ++ on my opinion

            Install Linux on Linux ? What do you mean by that ?

            In any case, you don't really need the viewer since you want to use Qt to show the images.

            N Offline
            N Offline
            Nathan Miguel
            wrote on 12 Dec 2018, 17:23 last edited by
            #22

            @SGaist I've been able to compile all but that's missing so I can finish compiling Kimageformat, "https://api.kde.org/frameworks/karchive/html/index.html"

            Could not set up the appstream test. appstreamcli is missing.
            Could NOT find BZip2 (missing: BZIP2_LIBRARIES BZIP2_INCLUDE_DIR)
            Could NOT find LibLZMA (missing: LIBLZMA_INCLUDE_DIR LIBLZMA_LIBRARY LIBLZMA_HAS_AUTO_DECODER LIBLZMA_HAS_EASY_ENCODER LIBLZMA_HAS_LZMA_PRESET)
            The following OPTIONAL packages have been found:

            * Qt5Network

            • The following REQUIRED packages have been found:

            * ECM (required version> = 5.53.0), Extra CMake Modules., Https://projects.kde.org/projects/kdesupport/extra-cmake-modules
             * ZLIB, Support for gzip compressed files and data streams, http://www.zlib.net
               Required by the core KDE libraries and some critical kioslaves
             * Qt5Core

            • The following features have been disabled:

            * QCH, API documentation in QCH format (for eg Qt Assistant, Qt Creator & KDevelop)

            • The following OPTIONAL packages have not been found:

            * LibLZMA, Support for xz compressed files and data streams, http://tukaani.org/xz/
               Support for xz compressed files and data streams

            • The following RECOMMENDED packages have not been found:

            * BZip2, Support for BZip2 compressed files and data streams, https://sourceware.org/bzip2/
               Support for BZip2 compressed files and data streams

            Configuring done
            Generating done

            1 Reply Last reply
            1
            • S SGaist
              11 Dec 2018, 21:54

              @Nathan-Miguel said in How can I open openexr image on qt widget:

              @SGaist If you have a problem with linux on linux, I would like to install linux on linux, because it is horrible to program on windows in C ++ on my opinion

              Install Linux on Linux ? What do you mean by that ?

              In any case, you don't really need the viewer since you want to use Qt to show the images.

              N Offline
              N Offline
              Nathan Miguel
              wrote on 12 Dec 2018, 18:09 last edited by
              #23

              @SGaist Sorry bother, but now I've been able to install everything, thanks to everyone, but how can I include this in my project

              V 1 Reply Last reply 12 Dec 2018, 18:11
              0
              • N Nathan Miguel
                12 Dec 2018, 18:09

                @SGaist Sorry bother, but now I've been able to install everything, thanks to everyone, but how can I include this in my project

                V Offline
                V Offline
                VRonin
                wrote on 12 Dec 2018, 18:11 last edited by
                #24

                @Nathan-Miguel said in How can I open openexr image on qt widget:

                but how can I include this in my project

                http://doc.qt.io/qt-5/third-party-libraries.html
                http://doc.qt.io/qtcreator/creator-project-qmake-libraries.html

                "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                ~Napoleon Bonaparte

                On a crusade to banish setIndexWidget() from the holy land of Qt

                N 1 Reply Last reply 12 Dec 2018, 19:55
                2
                • V VRonin
                  12 Dec 2018, 18:11

                  @Nathan-Miguel said in How can I open openexr image on qt widget:

                  but how can I include this in my project

                  http://doc.qt.io/qt-5/third-party-libraries.html
                  http://doc.qt.io/qtcreator/creator-project-qmake-libraries.html

                  N Offline
                  N Offline
                  Nathan Miguel
                  wrote on 12 Dec 2018, 19:55 last edited by
                  #25

                  @VRonin only have a problem, I just see these files for me and what does not accept other formats of includes other than .h, .lib, .a

                  0_1544644496765_a7f24467-ca07-4d98-8be5-32182a76f268-image.png

                  0_1544644529928_043c200c-dcdd-4d9e-b2a2-63f0898d01dd-image.png

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on 12 Dec 2018, 20:58 last edited by
                    #26

                    You don't have to link against them. They are plugins that will be loaded at run time.

                    You may have to add a call to QCoreApplication::addLibraryPath for your application to find them.

                    Interested in AI ? www.idiap.ch
                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                    N 2 Replies Last reply 13 Dec 2018, 17:37
                    2
                    • S SGaist
                      12 Dec 2018, 20:58

                      You don't have to link against them. They are plugins that will be loaded at run time.

                      You may have to add a call to QCoreApplication::addLibraryPath for your application to find them.

                      N Offline
                      N Offline
                      Nathan Miguel
                      wrote on 13 Dec 2018, 17:37 last edited by
                      #27

                      @SGaist there is a problem so, cmake is not wanting to include the openexr library in kimageformat, and this makes my program compatible with psd, krikta and others except openexr

                      0_1544722625396_6bd37dd2-d3a2-4fc1-aa59-81b5575e481e-image.png

                      1 Reply Last reply
                      0
                      • S SGaist
                        12 Dec 2018, 20:58

                        You don't have to link against them. They are plugins that will be loaded at run time.

                        You may have to add a call to QCoreApplication::addLibraryPath for your application to find them.

                        N Offline
                        N Offline
                        Nathan Miguel
                        wrote on 14 Dec 2018, 02:07 last edited by VRonin
                        #28

                        @SGaist I was able to make cmake find them but I still have an error compiling openexr's ".lib"

                        0_1544753199859_97a920a1-a53e-4933-893d-8a771b85212f-image.png

                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `K_IStream::read(char*, int)':
                        C:/Git/kimageformats/src/imageformats/exr.cpp:61: undefined reference to `Iex_2_3::throwErrnoExc(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `EXRHandler::read(QImage*)':
                        C:/Git/kimageformats/src/imageformats/exr.cpp:169: undefined reference to `Imf_2_3::globalThreadCount()'
                        C:/Git/kimageformats/src/imageformats/exr.cpp:169: undefined reference to `Imf_2_3::RgbaInputFile::RgbaInputFile(Imf_2_3::IStream&, int)'
                        C:/Git/kimageformats/src/imageformats/exr.cpp:170: undefined reference to `Imf_2_3::RgbaInputFile::dataWindow() const'
                        C:/Git/kimageformats/src/imageformats/exr.cpp:178: undefined reference to `Imf_2_3::RgbaInputFile::setFrameBuffer(Imf_2_3::Rgba*, unsigned long long, unsigned long long)'
                        C:/Git/kimageformats/src/imageformats/exr.cpp:179: undefined reference to `Imf_2_3::RgbaInputFile::readPixels(int, int)'C:/Git/kimageformats/src/imageformats/exr.cpp:169: undefined reference to `Imf_2_3::RgbaInputFile::~RgbaInputFile()'
                        C:/Git/kimageformats/src/imageformats/exr.cpp:169: undefined reference to `Imf_2_3::RgbaInputFile::~RgbaInputFile()'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `EXRHandler::canRead(QIODevice*)':
                        C:/Git/kimageformats/src/imageformats/exr.cpp:212: undefined reference to `Imf_2_3::isImfMagic(char const*)'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `Iex_2_3::InputExc::InputExc(char const*)':
                        C:/PROGRA~1/OpenEXR/include/OpenEXR/IexBaseExc.h:156: undefined reference to `Iex_2_3::BaseExc::BaseExc(char const*)'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `Iex_2_3::InputExc::~InputExc()':
                        C:/PROGRA~1/OpenEXR/include/OpenEXR/IexBaseExc.h:156: undefined reference to `Iex_2_3::BaseExc::~BaseExc()'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `K_IStream::K_IStream(QIODevice*, QByteArray const&)':
                        C:/Git/kimageformats/src/imageformats/exr.cpp:40: undefined reference to `Imf_2_3::IStream::IStream(char const*)'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj):exr.cpp:(.rdata$_ZTV9K_IStream[_ZTV9K_IStream]+0x20): undefined reference to `Imf_2_3::IStream::isMemoryMapped() const'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj):exr.cpp:(.rdata$_ZTV9K_IStream[_ZTV9K_IStream]+0x30): undefined reference to `Imf_2_3::IStream::readMemoryMapped(int)'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj): In function `K_IStream::~K_IStream()':
                        C:/Git/kimageformats/src/imageformats/exr.cpp:36: undefined reference to `Imf_2_3::IStream::~IStream()'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj):exr.cpp:(.rdata$_ZTVN7Iex_2_38InputExcE[_ZTVN7Iex_2_38InputExcE]+0x20): undefined reference to `Iex_2_3::BaseExc::what() const'
                        CMakeFiles\kimg_exr.dir/objects.a(exr.cpp.obj):exr.cpp:(.rdata$.refptr._ZN4half8_toFloatE[.refptr._ZN4half8_toFloatE]+0x0): undefined reference to `half::_toFloat'
                        collect2.exe: error: ld returned 1 exit status
                        mingw32-make.exe[2]: *** [src\imageformats\CMakeFiles\kimg_exr.dir\build.make:107: bin/imageformats/kimg_exr.dll] Error 1
                        mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:200: src/imageformats/CMakeFiles/kimg_exr.dir/all] Error 2
                        mingw32-make.exe: *** [Makefile:140: all] Error 2
                        
                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on 14 Dec 2018, 22:34 last edited by
                          #29

                          Can you check in which OpenEXR library you have these symbols ? It's likely the llmlmf library but better double check.

                          Interested in AI ? www.idiap.ch
                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                          N 1 Reply Last reply 15 Dec 2018, 12:06
                          0
                          • S SGaist
                            14 Dec 2018, 22:34

                            Can you check in which OpenEXR library you have these symbols ? It's likely the llmlmf library but better double check.

                            N Offline
                            N Offline
                            Nathan Miguel
                            wrote on 15 Dec 2018, 12:06 last edited by Nathan Miguel
                            #30

                            @SGaist strange, because all the libs here are good, until the includes are complete

                            0_1544875563064_887a0e51-2f6d-478f-a2f8-f155effb02bf-image.png

                            1 Reply Last reply
                            0
                            • S Offline
                              S Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on 15 Dec 2018, 21:38 last edited by
                              #31

                              I didn't meant you are missing a library, just wondering which one contains the missing symbols and thus if you are linking against it.

                              Interested in AI ? www.idiap.ch
                              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                              N 1 Reply Last reply 15 Dec 2018, 23:38
                              0
                              • S SGaist
                                15 Dec 2018, 21:38

                                I didn't meant you are missing a library, just wondering which one contains the missing symbols and thus if you are linking against it.

                                N Offline
                                N Offline
                                Nathan Miguel
                                wrote on 15 Dec 2018, 23:38 last edited by VRonin
                                #32

                                @SGaist The log says that "moc_predefs.h" is giving the library error to generate kimg_exr.dll, more briefly, but what can I do to correct it, I tried to switch between VS and mingw

                                [ 1%] Automatic MOC for target kimg_exr

                                AutoMoc subprocess error

                                The content generation command for "moc_predefs.h" failed.

                                Command

                                C:/Qt/Tools/mingw730_64/bin/g++.exe -dM -E -c "C:/Program Files/CMake/share/cmake-3.13/Modules/CMakeCXXCompilerABI.cpp" -IC:/Git/kimageformats/build/src/imageformats -IC:/Git/kimageformats/src/imageformats -IC:/Qt/5.12.0/mingw73_64/include -IC:/Qt/5.12.0/mingw73_64/include/QtGui -IC:/Qt/5.12.0/mingw73_64/include/QtANGLE -IC:/Qt/5.12.0/mingw73_64/include/QtCore -IC:/Qt/5.12.0/mingw73_64/./mkspecs/win32-g++ "-IC:/Program Files/OpenEXR/include/OpenEXR" -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_SIGNALS_SLOTS_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING -DQT_USE_QSTRINGBUILDER -DUNICODE -DWIN32_LEAN_AND_MEAN -DWINVER=0x0600 -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_USE_MATH_DEFINES -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0600 -DWIN32
                                

                                Output

                                src\imageformats\CMakeFiles\kimg_exr_autogen.dir\build.make:56: recipe for target 'src/imageformats/CMakeFiles/kimg_exr_autogen' failed
                                mingw32-make.exe[2]: *** [src/imageformats/CMakeFiles/kimg_exr_autogen] Error 1
                                CMakeFiles\Makefile2:569: recipe for target 'src/imageformats/CMakeFiles/kimg_exr_autogen.dir/all' failed
                                mingw32-make.exe[1]: *** [src/imageformats/CMakeFiles/kimg_exr_autogen.dir/all] Error 2
                                Makefile:139: recipe for target 'all' failed
                                mingw32-make.exe: *** [all] Error 2
                                
                                1 Reply Last reply
                                0
                                • S Offline
                                  S Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on 16 Dec 2018, 22:21 last edited by
                                  #33

                                  You can't mix and match C++ libraries built with VS and MinGW, you have to always use the same compiler.

                                  Interested in AI ? www.idiap.ch
                                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  N 1 Reply Last reply 17 Dec 2018, 22:08
                                  3
                                  • V Offline
                                    V Offline
                                    VRonin
                                    wrote on 17 Dec 2018, 08:27 last edited by VRonin
                                    #34

                                    I tried to build it myself but I must admit I too struggle with getting openexr to link. I will post my progress below anyway to make it more accessible to other people to try and fix this. The commands should create a zip file containing each dependency and a zip file containing the KDE API libraries but I can't get the final link over the line

                                    The series of commands I used can be replicated to build all the dependencies and the library (as you can see, I built with Qt5.12 on MSVC 2015):

                                    set cmake_path=C:\Program Files\CMake\bin
                                    set 7zip_path=C:\Program Files\7-Zip
                                    set git_path=C:\Program Files\Git\bin
                                    set qt_path=C:\Qt\5.12\msvc2015_64
                                    set curl_path=C:\libcurl\bin
                                    set compiler_path=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
                                    set comp_platform=amd64
                                    set use_mingw=false
                                    set originalWD=%CD%
                                    set PATH=%cmake_path%;%git_path%;%curl_path%;%7zip_path%;%PATH%
                                    call "%qt_path%\bin\qtenv2.bat"
                                    cd %originalWD%
                                    echo on
                                    if %use_mingw%==true set PATH=%compiler_path%;%PATH%
                                    if %use_mingw%==false call "%compiler_path%\vcvarsall.bat" %comp_platform%
                                    if %use_mingw%==true (set CMAKEGENERATOR="MinGW Makefiles") else (set CMAKEGENERATOR="NMake Makefiles")
                                    mkdir .\bzip2src && cd .\bzip2src
                                    curl -k -L https://sourceforge.net/projects/gnuwin32/files/bzip2/1.0.5/bzip2-1.0.5-src.zip --output bzip2.zip
                                    7z x bzip2.zip
                                    del /F /Q  bzip2.zip
                                    cd src\bzip2\1.0.5\bzip2-1.0.5\
                                    mkdir build && cd build
                                    echo cmake_minimum_required(VERSION 3.5) >> ..\CMakeLists.txt
                                    echo project(bzip2 C) >> ..\CMakeLists.txt
                                    echo set(bzip2_VERSION 1.0.5) >> ..\CMakeLists.txt
                                    echo set(bzip2_SRCS >> ..\CMakeLists.txt
                                    echo bzlib.c >> ..\CMakeLists.txt
                                    echo blocksort.c >> ..\CMakeLists.txt
                                    echo huffman.c >> ..\CMakeLists.txt
                                    echo crctable.c >> ..\CMakeLists.txt
                                    echo compress.c >> ..\CMakeLists.txt
                                    echo decompress.c >> ..\CMakeLists.txt
                                    echo randtable.c >> ..\CMakeLists.txt
                                    echo ) >> ..\CMakeLists.txt
                                    echo add_library(bzip2 SHARED ${bzip2_SRCS}) >> ..\CMakeLists.txt
                                    echo install(TARGETS bzip2 >> ..\CMakeLists.txt
                                    echo EXPORT bzip2 >> ..\CMakeLists.txt
                                    echo RUNTIME DESTINATION bin COMPONENT library >> ..\CMakeLists.txt
                                    echo LIBRARY DESTINATION lib COMPONENT library >> ..\CMakeLists.txt
                                    echo ARCHIVE DESTINATION lib COMPONENT library >> ..\CMakeLists.txt
                                    echo ) >> ..\CMakeLists.txt
                                    echo install(FILES bzlib.h >> ..\CMakeLists.txt
                                    echo DESTINATION include >> ..\CMakeLists.txt
                                    echo COMPONENT headers >> ..\CMakeLists.txt
                                    echo ) >> ..\CMakeLists.txt
                                    cmake -G %CMAKEGENERATOR% -DCMAKE_INSTALL_PREFIX=../../../../../../bzip2 -DCMAKE_BUILD_TYPE=RELEASE ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cd ..\..\..\..\..\..\
                                    set PATH=%CD%\bzip2;%PATH%
                                    7z a -tzip bzip2.zip .\bzip2\*
                                    mkdir .\liblzma && cd .\liblzma
                                    curl -k -L https://tukaani.org/xz/xz-5.2.4-windows.zip --output liblzma.zip
                                    7z x liblzma.zip
                                    del /F /Q liblzma.zip
                                    if %use_mingw%==true (ren bin_i686 lib) else (mkdir lib && mkdir bin)
                                    if %use_mingw%==false curl -k -L https://tukaani.org/xz/xz-5.2.4.tar.gz --output liblzma.tar.gz
                                    if %use_mingw%==false 7z x liblzma.tar.gz
                                    if %use_mingw%==false del /F /Q liblzma.tar.gz
                                    if %use_mingw%==false 7z x liblzma.tar
                                    if %use_mingw%==false del /F /Q liblzma.tar
                                    if %use_mingw%==false cd xz-5.2.4\windows\vs2013
                                    if %comp_platform%==x86 if %use_mingw%==false msbuild xz_win.sln /property:Configuration=Release /property:Platform=Win32 && xcopy /Y /I /K Release\Win32\liblzma_dll\*.dll ..\..\..\bin && xcopy /Y /I /K Release\Win32\liblzma_dll\*.lib ..\..\..\lib
                                    if %comp_platform%==amd64 if %use_mingw%==false msbuild xz_win.sln /property:Configuration=Release /property:Platform=x64 && xcopy /Y /I /K Release\x64\liblzma_dll\*.dll ..\..\..\bin && xcopy /Y /I /K Release\x64\liblzma_dll\*.lib ..\..\..\lib
                                    if %use_mingw%==false cd ..\..\..\
                                    set PATH=%CD%;%PATH%
                                    cd ..\
                                    7z a -tzip liblzma.zip .\liblzma\include\
                                    7z a -tzip liblzma.zip .\liblzma\lib\
                                    if %use_mingw%==false 7z a -tzip liblzma.zip .\liblzma\bin\
                                    git clone https://github.com/madler/zlib.git zlibBuild
                                    cd zlibBuild
                                    mkdir .\build && cd .\build
                                    cmake -G %CMAKEGENERATOR% -DCMAKE_INSTALL_PREFIX=../../zlib -DCMAKE_BUILD_TYPE=RELEASE ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cd ..\..\
                                    7z a -tzip zlib.zip .\zlib\*
                                    set PATH=%CD%\zlib;%PATH%
                                    git clone https://github.com/openexr/openexr.git OpenEXRsrc
                                    cd OpenEXRsrc
                                    mkdir .\build && cd .\build
                                    cmake -G %CMAKEGENERATOR% -DOPENEXR_NAMESPACE_VERSIONING=OFF -DOPENEXR_BUILD_PYTHON_LIBS=OFF -DCMAKE_DEBUG_POSTFIX=d -DOPENEXR_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=../../OpenEXR -DCMAKE_BUILD_TYPE=DEBUG ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cmake -G %CMAKEGENERATOR% -DOPENEXR_NAMESPACE_VERSIONING=OFF -DOPENEXR_BUILD_PYTHON_LIBS=OFF -DOPENEXR_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=../../OpenEXR -DCMAKE_BUILD_TYPE=RELEASE ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cd ..\..\
                                    7z a -tzip OpenEXR.zip .\OpenEXR\*
                                    set PATH=%CD%\OpenEXR;%PATH%
                                    git clone git://anongit.kde.org/extra-cmake-modules ECM
                                    cd ECM
                                    mkdir .\build && cd .\build
                                    cmake -G %CMAKEGENERATOR% -DBUILD_TESTING=OFF -DCMAKE_INSTALL_PREFIX=../../ECMbuild -DCMAKE_BUILD_TYPE=RELEASE ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cd ..\..\
                                    set PATH=%CD%\ECMbuild;%PATH%
                                    git clone git://anongit.kde.org/karchive.git KArchive
                                    cd KArchive
                                    mkdir .\build && cd .\build
                                    cmake -G %CMAKEGENERATOR% -DBUILD_TESTING=OFF -DCMAKE_DEBUG_POSTFIX=d -DCMAKE_INSTALL_PREFIX=../../KDEAPI -DCMAKE_BUILD_TYPE=DEBUG ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cmake -G %CMAKEGENERATOR% -DBUILD_TESTING=OFF -DCMAKE_INSTALL_PREFIX=../../KDEAPI -DCMAKE_BUILD_TYPE=RELEASE ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cd ..\..\
                                    set PATH=%CD%\KDEAPI;%PATH%
                                    git clone git://anongit.kde.org/kimageformats.git KImageFormats
                                    cd KImageFormats
                                    mkdir .\build && cd .\build
                                    cmake -G %CMAKEGENERATOR% -DBUILD_TESTING=OFF -DCMAKE_DEBUG_POSTFIX=d -DCMAKE_INSTALL_PREFIX=../../KDEAPI -DCMAKE_BUILD_TYPE=DEBUG ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cmake -G %CMAKEGENERATOR% -DBUILD_TESTING=OFF -DCMAKE_INSTALL_PREFIX=../../KDEAPI -DCMAKE_BUILD_TYPE=RELEASE ../
                                    cmake --build .
                                    cmake --build . --target install
                                    cd ..\..\
                                    7z a -tzip KDElib.zip .\KDEAPI\*
                                    

                                    You'll need to have installed 7-zip, curl, CMake and git.
                                    You'll need to change the initial lines to match your system:

                                    • set cmake_path=C:\Program Files\CMake\bin: path to the CMake executable
                                    • set 7zip_path=C:\Program Files\7-Zip: path to the 7-zip executable
                                    • set git_path=C:\Program Files\Git\bin: path to the git executable
                                    • set qt_path=C:\Qt\5.12\msvc2015_64: path to your qt directory
                                    • set curl_path=C:\libcurl\bin: path to the curl executable
                                    • set compiler_path=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC: path to the compiler binary folder
                                    • set comp_platform=amd64 can be either amd64 or x86 determines if the build is 64 or 32 bit
                                    • set use_mingw=false set to true if you use MinGW or false if you use MSVC

                                    One final thing, if you use MinGW you might need to adjust the line if %use_mingw%==true (ren bin_i686 lib) else (mkdir lib && mkdir bin) changing bin_i686 to the name of the folder containing the libraries that match your compiler (there are 3 available)

                                    "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                                    ~Napoleon Bonaparte

                                    On a crusade to banish setIndexWidget() from the holy land of Qt

                                    1 Reply Last reply
                                    5
                                    • S SGaist
                                      16 Dec 2018, 22:21

                                      You can't mix and match C++ libraries built with VS and MinGW, you have to always use the same compiler.

                                      N Offline
                                      N Offline
                                      Nathan Miguel
                                      wrote on 17 Dec 2018, 22:08 last edited by
                                      #35

                                      @SGaist @VRonin you save my lifeeeeeee. but Well I chose to use VS because mingw gave object error, but how can I include it in qt now, you can give a clearer explanation because documentation is confusing

                                      V 1 Reply Last reply 18 Dec 2018, 08:24
                                      0
                                      • N Nathan Miguel
                                        17 Dec 2018, 22:08

                                        @SGaist @VRonin you save my lifeeeeeee. but Well I chose to use VS because mingw gave object error, but how can I include it in qt now, you can give a clearer explanation because documentation is confusing

                                        V Offline
                                        V Offline
                                        VRonin
                                        wrote on 18 Dec 2018, 08:24 last edited by
                                        #36

                                        @Nathan-Miguel said in How can I open openexr image on qt widget:

                                        but how can I include it in qt

                                        I imagine you mean Qt Creator. Right click on your project -> add library -> external library -> select the .lib file and the include directory (the d suffix should be detected automatically).

                                        "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                                        ~Napoleon Bonaparte

                                        On a crusade to banish setIndexWidget() from the holy land of Qt

                                        N 1 Reply Last reply 18 Dec 2018, 19:59
                                        0
                                        • V VRonin
                                          18 Dec 2018, 08:24

                                          @Nathan-Miguel said in How can I open openexr image on qt widget:

                                          but how can I include it in qt

                                          I imagine you mean Qt Creator. Right click on your project -> add library -> external library -> select the .lib file and the include directory (the d suffix should be detected automatically).

                                          N Offline
                                          N Offline
                                          Nathan Miguel
                                          wrote on 18 Dec 2018, 19:59 last edited by Nathan Miguel
                                          #37

                                          @VRonin even the libs was fine, but in question my qt still does not open and I still have some doubts,

                                          1. Do I need to add the openexr and libs includes?
                                          2. Can I continue using the QPixelmap label?
                                          3. In kimageformat did not come any include in .h, do I have to use .desktop or use the openexr includes to open the image?

                                          This is the function I'm using to open an image

                                          void MainWindow::on_actionOpen_Image_triggered()
                                          {
                                              QString filter = "Imagens (*.bmp *.cur *.gif *icns *.ico *.jpg *.jpeg *.pdm *.pgm *.png *.ppm *.svg *.tga *.tif *.tiff *.wbmp *.webp *.xmb *.xpm) ;; All Files (*.*)";
                                              QString filename = QFileDialog::getOpenFileName(this, "Open", QDir::homePath(), filter);
                                              QFile file(filename);
                                              QImage image(filename);
                                              if (!image.isNull())
                                                  {
                                                       QImage image(filename);
                                                       image = image.scaledToWidth(ui->labelimg->width(), Qt::SmoothTransformation);
                                                       image = image.scaledToWidth(ui->labelimg->height(), Qt::SmoothTransformation);
                                                       ui->labelimg->setPixmap(QPixmap::fromImage(image));
                                                  }
                                              else
                                                  {
                                                      QMessageBox::warning(this, "Error", "Image can not open");
                                                      filename = "";
                                                  }
                                          
                                          }
                                          
                                          1 Reply Last reply
                                          0

                                          27/49

                                          13 Dec 2018, 17:37

                                          • Login

                                          • Login or register to search.
                                          27 out of 49
                                          • First post
                                            27/49
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved