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

How can I open openexr image on qt widget

Scheduled Pinned Locked Moved Unsolved General and Desktop
49 Posts 5 Posters 9.7k Views
  • 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, 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
                                • S Offline
                                  S Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on 18 Dec 2018, 23:09 last edited by
                                  #38

                                  Where did you install the plugins ?
                                  You can also set the QT_DEBUG_PLUGINS environment variable to 1 in the Run part of the Project panel to see what is happening.

                                  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 19 Dec 2018, 12:03
                                  0
                                  • S SGaist
                                    18 Dec 2018, 23:09

                                    Where did you install the plugins ?
                                    You can also set the QT_DEBUG_PLUGINS environment variable to 1 in the Run part of the Project panel to see what is happening.

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

                                    @SGaist The .desktop files are in the files and programs folder, the libs continued in the folder on I compiled, which was in C: / Git / kimageformat / build, and the dll were for the qt compiler itself, msvc2017-64 in the plugin / image folder

                                    One more thing, in this directory "C: \ Qt \ 5.12.0 \ msvc2017_64 \ plugins \ imageformats", I realized that the "tga" format, had tbm support here, and gives the same error when I try to open open exr in the app debug "QImage :: scaleWidth: Image is a null image".

                                    First I used the .dll, .pdb files with this name "kimg_exr", then renamed "qexr", both the dll and the pdb, but it still did not work, nor with the native tga that worked right.

                                    And if it is useful these are my includes

                                    #include "mainwindow.h"
                                    #include "ui_mainwindow.h"
                                    #include <QDesktopServices>
                                    #include <QMessageBox>
                                    #include <QUrl>
                                    #include <QFile>
                                    #include <QFileDialog>
                                    #include <QImage>
                                    #include <QPixmap>
                                    #include <QImageIOPlugin>
                                    #include <QImageIOHandler>
                                    

                                    source code: https://github.com/nathanmiguel123/Denoiser-Script

                                    1 Reply Last reply
                                    0
                                    • S Offline
                                      S Offline
                                      SGaist
                                      Lifetime Qt Champion
                                      wrote on 20 Dec 2018, 22:51 last edited by
                                      #40

                                      Did you call nmake install at some point ?

                                      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 21 Dec 2018, 01:26
                                      0
                                      • S SGaist
                                        20 Dec 2018, 22:51

                                        Did you call nmake install at some point ?

                                        N Offline
                                        N Offline
                                        Nathan Miguel
                                        wrote on 21 Dec 2018, 01:26 last edited by
                                        #41

                                        @SGaist noup

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

                                          Then this might explain the missing plugins.

                                          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 22 Dec 2018, 13:02
                                          0

                                          32/49

                                          15 Dec 2018, 23:38

                                          • Login

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