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 10.9k 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.
  • SGaistS SGaist

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

    N Offline
    N Offline
    Nathan Miguel
    wrote on last edited by VRonin
    #17

    @SGaist

    CMAKE TERMINAL:

    PS C:\Git\openexr\build> cmake --build .
    [  0%] Built target eLut
    [  1%] Built target toFloat
    [  1%] Built target Half
    [  2%] Built target Half_static
    [  2%] Built target Iex
    [  3%] Built target Iex_static
    [  4%] Building CXX object IlmBase/IexMath/CMakeFiles/IexMath.dir/IexMathFloatExc.cpp.obj
    In file included from C:/Git/openexr/IlmBase/Iex/IexMathExc.h:40:0,
                     from C:/Git/openexr/IlmBase/IexMath/IexMathFloatExc.h:58,
                     from C:\Git\openexr\IlmBase\IexMath\IexMathFloatExc.cpp:43:
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:149:29: error: function 'Iex_2_3::ArgExc::ArgExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ArgExc, BaseExc)    // Invalid arguments to a function call
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:149:29: error: function 'Iex_2_3::ArgExc::ArgExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ArgExc, BaseExc)    // Invalid arguments to a function call
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:149:29: error: function 'Iex_2_3::ArgExc::ArgExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ArgExc, BaseExc)    // Invalid arguments to a function call
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:149:29: error: function 'Iex_2_3::ArgExc::ArgExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ArgExc, BaseExc)    // Invalid arguments to a function call
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::ArgExc::~ArgExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:149:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, ArgExc, BaseExc)    // Invalid arguments to a function call
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:151:29: error: function 'Iex_2_3::LogicExc::LogicExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, LogicExc, BaseExc)  // General error in a program's logic,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:151:29: error: function 'Iex_2_3::LogicExc::LogicExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, LogicExc, BaseExc)  // General error in a program's logic,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:151:29: error: function 'Iex_2_3::LogicExc::LogicExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, LogicExc, BaseExc)  // General error in a program's logic,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:151:29: error: function 'Iex_2_3::LogicExc::LogicExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, LogicExc, BaseExc)  // General error in a program's logic,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::LogicExc::~LogicExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:151:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, LogicExc, BaseExc)  // General error in a program's logic,
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:156:29: error: function 'Iex_2_3::InputExc::InputExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, InputExc, BaseExc)  // Invalid input data, e.g. from a file
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:156:29: error: function 'Iex_2_3::InputExc::InputExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, InputExc, BaseExc)  // Invalid input data, e.g. from a file
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:156:29: error: function 'Iex_2_3::InputExc::InputExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, InputExc, BaseExc)  // Invalid input data, e.g. from a file
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:156:29: error: function 'Iex_2_3::InputExc::InputExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, InputExc, BaseExc)  // Invalid input data, e.g. from a file
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::InputExc::~InputExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:156:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, InputExc, BaseExc)  // Invalid input data, e.g. from a file
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:158:29: error: function 'Iex_2_3::IoExc::IoExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, IoExc, BaseExc)     // Input or output operation failed
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:158:29: error: function 'Iex_2_3::IoExc::IoExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, IoExc, BaseExc)     // Input or output operation failed
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:158:29: error: function 'Iex_2_3::IoExc::IoExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, IoExc, BaseExc)     // Input or output operation failed
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:158:29: error: function 'Iex_2_3::IoExc::IoExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, IoExc, BaseExc)     // Input or output operation failed
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::IoExc::~IoExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:158:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, IoExc, BaseExc)     // Input or output operation failed
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:160:29: error: function 'Iex_2_3::MathExc::MathExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, MathExc, BaseExc)  // Arithmetic exception; more specific
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:160:29: error: function 'Iex_2_3::MathExc::MathExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, MathExc, BaseExc)  // Arithmetic exception; more specific
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:160:29: error: function 'Iex_2_3::MathExc::MathExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, MathExc, BaseExc)  // Arithmetic exception; more specific
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:160:29: error: function 'Iex_2_3::MathExc::MathExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, MathExc, BaseExc)  // Arithmetic exception; more specific
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::MathExc::~MathExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:160:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, MathExc, BaseExc)  // Arithmetic exception; more specific
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:164:29: error: function 'Iex_2_3::ErrnoExc::ErrnoExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ErrnoExc, BaseExc)  // Base class for exceptions corresponding
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:164:29: error: function 'Iex_2_3::ErrnoExc::ErrnoExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ErrnoExc, BaseExc)  // Base class for exceptions corresponding
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:164:29: error: function 'Iex_2_3::ErrnoExc::ErrnoExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ErrnoExc, BaseExc)  // Base class for exceptions corresponding
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:164:29: error: function 'Iex_2_3::ErrnoExc::ErrnoExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, ErrnoExc, BaseExc)  // Base class for exceptions corresponding
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::ErrnoExc::~ErrnoExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:164:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, ErrnoExc, BaseExc)  // Base class for exceptions corresponding
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:169:29: error: function 'Iex_2_3::NoImplExc::NoImplExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NoImplExc, BaseExc) // Missing method exception e.g. from a
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:169:29: error: function 'Iex_2_3::NoImplExc::NoImplExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NoImplExc, BaseExc) // Missing method exception e.g. from a
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:169:29: error: function 'Iex_2_3::NoImplExc::NoImplExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NoImplExc, BaseExc) // Missing method exception e.g. from a
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:169:29: error: function 'Iex_2_3::NoImplExc::NoImplExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NoImplExc, BaseExc) // Missing method exception e.g. from a
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::NoImplExc::~NoImplExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:169:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, NoImplExc, BaseExc) // Missing method exception e.g. from a
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:175:29: error: function 'Iex_2_3::NullExc::NullExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NullExc, BaseExc)   // A pointer is inappropriately null.
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:175:29: error: function 'Iex_2_3::NullExc::NullExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NullExc, BaseExc)   // A pointer is inappropriately null.
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:175:29: error: function 'Iex_2_3::NullExc::NullExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NullExc, BaseExc)   // A pointer is inappropriately null.
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:175:29: error: function 'Iex_2_3::NullExc::NullExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, NullExc, BaseExc)   // A pointer is inappropriately null.
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::NullExc::~NullExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:175:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, NullExc, BaseExc)   // A pointer is inappropriately null.
     ^~~~~~~~~~~~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:177:29: error: function 'Iex_2_3::TypeExc::TypeExc()' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, TypeExc, BaseExc)   // An object is an inappropriate type,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:135:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name()                         throw(): base (0)    {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:177:29: error: function 'Iex_2_3::TypeExc::TypeExc(const char*)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, TypeExc, BaseExc)   // An object is an inappropriate type,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:136:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const char* text)        throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:177:29: error: function 'Iex_2_3::TypeExc::TypeExc(const string&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, TypeExc, BaseExc)   // An object is an inappropriate type,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:137:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (const std::string &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:177:29: error: function 'Iex_2_3::TypeExc::TypeExc(std::stringstream&)' definition is marked dllimport
     DEFINE_EXC_EXP (IEX_EXPORT, TypeExc, BaseExc)   // An object is an inappropriate type,
                                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:138:13: note: in definition of macro 'DEFINE_EXC_EXP'
             exp name (std::stringstream &text) throw(): base (text) {}  \
                 ^~~~
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:139:13: error: function 'Iex_2_3::TypeExc::~TypeExc()' definition is marked dllimport
             exp ~name() throw() { }                                     \
                 ^
    C:/Git/openexr/IlmBase/Iex/IexBaseExc.h:177:1: note: in expansion of macro 'DEFINE_EXC_EXP'
     DEFINE_EXC_EXP (IEX_EXPORT, TypeExc, BaseExc)   // An object is an inappropriate type,
     ^~~~~~~~~~~~~~
    IlmBase\IexMath\CMakeFiles\IexMath.dir\build.make:62: recipe for target 'IlmBase/IexMath/CMakeFiles/IexMath.dir/IexMathFloatExc.cpp.obj' failed
    mingw32-make.exe[2]: *** [IlmBase/IexMath/CMakeFiles/IexMath.dir/IexMathFloatExc.cpp.obj] Error 1
    CMakeFiles\Makefile2:1294: recipe for target 'IlmBase/IexMath/CMakeFiles/IexMath.dir/all' failed
    mingw32-make.exe[1]: *** [IlmBase/IexMath/CMakeFiles/IexMath.dir/all] Error 2
    Makefile:161: recipe for target 'all' failed
    mingw32-make.exe: *** [all] Error 2
    
    CMAKE GUI 
    
    CMake Warning at CMakeLists.txt:143 (message):
      Viewers are currently out of order.  Building anyway
    
    
    Found OpenGL: opengl32   
    Could NOT find FLTK (missing: FLTK_LIBRARIES FLTK_INCLUDE_DIR) 
    CMake Warning at CMakeLists.txt:147 (message):
      FLTK not found, exrdisplay will not be built
    
    
    ILMBASE_PACKAGE_PREFIX = C:/Program Files (x86)/OpenEXR
    INFO,Skipping Python bindings
    INFO,Skipping OpenEXR Viewers
    Configuring done
    Generating done
    
    1 Reply Last reply
    0
    • SGaistS SGaist

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

      N Offline
      N Offline
      Nathan Miguel
      wrote on 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
      • SGaistS SGaist

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

        N Offline
        N Offline
        Nathan Miguel
        wrote on last edited by Nathan Miguel
        #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

        SGaistS 1 Reply Last reply
        0
        • N Nathan Miguel

          @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

          SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on 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
          1
          • SGaistS SGaist

            @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 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
            • SGaistS SGaist

              @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 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
              • SGaistS SGaist

                @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 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

                VRoninV 1 Reply Last reply
                0
                • N Nathan Miguel

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

                  VRoninV Offline
                  VRoninV Offline
                  VRonin
                  wrote on 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
                  2
                  • VRoninV VRonin

                    @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 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
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on 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
                      2
                      • SGaistS SGaist

                        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 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
                        • SGaistS SGaist

                          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 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
                          • SGaistS Offline
                            SGaistS Offline
                            SGaist
                            Lifetime Qt Champion
                            wrote on 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
                            0
                            • SGaistS SGaist

                              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 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
                              • SGaistS Offline
                                SGaistS Offline
                                SGaist
                                Lifetime Qt Champion
                                wrote on 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
                                0
                                • SGaistS SGaist

                                  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 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
                                  • SGaistS Offline
                                    SGaistS Offline
                                    SGaist
                                    Lifetime Qt Champion
                                    wrote on 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
                                    3
                                    • VRoninV Offline
                                      VRoninV Offline
                                      VRonin
                                      wrote on 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
                                      • SGaistS SGaist

                                        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 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

                                        VRoninV 1 Reply Last reply
                                        0
                                        • N Nathan Miguel

                                          @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

                                          VRoninV Offline
                                          VRoninV Offline
                                          VRonin
                                          wrote on 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
                                          0

                                          • Login

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