Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. 3rd Party Software
  4. Integrating exiv2 with Qt
Forum Updated to NodeBB v4.3 + New Features

Integrating exiv2 with Qt

Scheduled Pinned Locked Moved Unsolved 3rd Party Software
43 Posts 2 Posters 16.2k 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 Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #8

    Again: you have to add that path to the PATH environment variable. The loader doesn't care about EXIVPATH to find the .dll it needs.

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

    1 Reply Last reply
    1
    • saitejS Offline
      saitejS Offline
      saitej
      wrote on last edited by
      #9

      Sorry!

      I have now added in the Path variable. The error code has changed to 139

      1 Reply Last reply
      0
      • SGaistS SGaist

        Hi,

        Your .pro file is wrong. You shouldn't link to .dll files but to .lib files.

        So for exiv2 it should be something like LIBS += -lexiv2

        Did you also check that you are using the same compiler everywhere ? That's pretty important on Windows.

        On a side note, there's no need to have several time the exact same folder you your LIBS line.

        saitejS Offline
        saitejS Offline
        saitej
        wrote on last edited by
        #10

        @SGaist said in Integrating exiv2 with qt:

        Did you also check that you are using the same compiler everywhere ? That's pretty important on Windows.

        I have compiled it using msys and mingw. I am not able to get the mingw32 version

        I am using Qt installed from qt-opensource-windows-x86-mingw492-5.6.1-1.exe file.

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #11

          Do you mean that you get that error 139 at startup ?

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

          1 Reply Last reply
          0
          • saitejS Offline
            saitejS Offline
            saitej
            wrote on last edited by
            #12

            Sorry for the late reply!
            Yes

            During startup program exited with code 0x0000c139

            1 Reply Last reply
            0
            • SGaistS Offline
              SGaistS Offline
              SGaist
              Lifetime Qt Champion
              wrote on last edited by
              #13

              AFAIK, it means that it fails to load a .dll Do you have other dependencies ?

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

              1 Reply Last reply
              0
              • saitejS Offline
                saitejS Offline
                saitej
                wrote on last edited by
                #14

                most probably no .. coz i gave local/bin also as the path

                1 Reply Last reply
                0
                • SGaistS Offline
                  SGaistS Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on last edited by
                  #15

                  local/bin ? On Windows ?

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

                  1 Reply Last reply
                  0
                  • saitejS Offline
                    saitejS Offline
                    saitej
                    wrote on last edited by
                    #16

                    Ya ... mingw installation path!!

                    1 Reply Last reply
                    0
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on last edited by
                      #17

                      Just to rule out the obvious, can you copy the exiv2 .dll in the same folder as the application and check whether the application starts ?

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

                      saitejS 1 Reply Last reply
                      0
                      • SGaistS SGaist

                        Just to rule out the obvious, can you copy the exiv2 .dll in the same folder as the application and check whether the application starts ?

                        saitejS Offline
                        saitejS Offline
                        saitej
                        wrote on last edited by
                        #18

                        @SGaist

                        Sorry for the late reply!!

                        Ya .. i have tried that already but gives the same error!

                        In the mean time I actually have tried many libraries and all are having same problem. So I guess there is a problem in either the build or the way of including the library. I will brief you exactly what I have done and the versions.

                        Build:

                        • I have successfully build the source code in the qt project folder using --prefix option with msys terminal with mingw compiler.

                        mingw32-g++.exe (GCC) 5.3.0
                        mingw32-gcc-5.3.0.exe (GCC) 5.3.0

                        • I am using Qt installed from qt-opensource-windows-x86-mingw492-5.6.1-1.exe

                        • I have added mingw32-g++.exe (GCC) 5.3.0 as the compiler manually

                        • I have added the external library (libexiv2.dll.a) in Qtcreator via Add Library external library and static mode.

                        • I have also added to the PATH variable you have suggested.

                        The .pro reads this:

                        win32: LIBS += -L$$PWD/libs/exiv2build/lib/ -llibexiv2.dll
                        
                        INCLUDEPATH += $$PWD/libs/exiv2build/include
                        DEPENDPATH += $$PWD/libs/exiv2build/include
                        
                        

                        It still gives me the error During startup program exited with code 0x0000c139.

                        Any suggestion on what might have gone wrong?

                        1 Reply Last reply
                        0
                        • SGaistS Offline
                          SGaistS Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on last edited by
                          #19

                          Do I understand understand correctly that you are trying to run application with libraries built with two different versions of MinGW ?

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

                          saitejS 1 Reply Last reply
                          0
                          • SGaistS SGaist

                            Do I understand understand correctly that you are trying to run application with libraries built with two different versions of MinGW ?

                            saitejS Offline
                            saitejS Offline
                            saitej
                            wrote on last edited by saitej
                            #20

                            No.

                            I have right now changed it to the same compiler by changing the kit

                            Also, I have used the dependency walker on the dll file and have found problems in these dependencies:

                            I have attached the dependencywalker image for the same:

                            1 Reply Last reply
                            0
                            • SGaistS Offline
                              SGaistS Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on last edited by
                              #21

                              What image format is it ?

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

                              1 Reply Last reply
                              1
                              • saitejS Offline
                                saitejS Offline
                                saitej
                                wrote on last edited by
                                #22

                                dependency walker

                                1 Reply Last reply
                                0
                                • SGaistS Offline
                                  SGaistS Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #23

                                  Can you provide an image that is in a more mainstream format ?

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

                                  1 Reply Last reply
                                  1
                                  • saitejS Offline
                                    saitejS Offline
                                    saitej
                                    wrote on last edited by
                                    #24

                                    I can send you in text format but it might be difficult to decipher.

                                    1 Reply Last reply
                                    0
                                    • SGaistS Offline
                                      SGaistS Offline
                                      SGaist
                                      Lifetime Qt Champion
                                      wrote on last edited by
                                      #25

                                      A screenshot of Dependency Walker's window might be simpler.

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

                                      1 Reply Last reply
                                      1
                                      • SGaistS Offline
                                        SGaistS Offline
                                        SGaist
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #26

                                        From a look at the text file. There's at least one architecture mismatch. Double check libexiv2, if I saw things correctly, it's a 64bit library and you are using a 32bit Qt.

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

                                        saitejS 1 Reply Last reply
                                        1
                                        • SGaistS SGaist

                                          From a look at the text file. There's at least one architecture mismatch. Double check libexiv2, if I saw things correctly, it's a 64bit library and you are using a 32bit Qt.

                                          saitejS Offline
                                          saitejS Offline
                                          saitej
                                          wrote on last edited by
                                          #27

                                          @SGaist

                                          Sorry for revoking the topic after a long time.

                                          I am using both 32 bit (QT and mingw). When I load the dll in dependency walker, these are the missing dlls.

                                          Kernel32.dll
                                          MSVCRT.DLL
                                          PSAPI.DLL
                                          USER32.DLL
                                          WS2_32.DLL

                                          I am unable to find these in the mingw bin folder also. So where can i get these dll's so that I can manually add them ?

                                          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