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

Integrating exiv2 with Qt

Scheduled Pinned Locked Moved Unsolved 3rd Party Software
43 Posts 2 Posters 25.6k 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