Menu

#24 openbabel features on molsketch 0.5.1

Boron-10 (0.5.1)
closed-fixed
None
5
2018-02-16
2018-01-25
No

Hello developers.

We are compiling molsketch 0.5.1Qt5 on Fedora 27 including shared libraries. This is the build log: https://paste.fedoraproject.org/paste/TWX3HpfkR75IXGtvnSuhyA

molsketch looks not always activate the Openbabel features, altought libobabeliface-qt5.so is compiled

$ ldd /usr/bin/molsketch-qt5
    linux-vdso.so.1 (0x00007fff65cf0000)
    libmolsketch-qt5.so.0 => /lib64/libmolsketch-qt5.so.0 (0x00007f0418f79000)
    libQt5PrintSupport.so.5 => /lib64/libQt5PrintSupport.so.5 (0x00007f0418d0b000)
    libQt5Svg.so.5 => /lib64/libQt5Svg.so.5 (0x00007f0418ab5000)
    libQt5Widgets.so.5 => /lib64/libQt5Widgets.so.5 (0x00007f0418269000)
    libQt5Gui.so.5 => /lib64/libQt5Gui.so.5 (0x00007f0417bab000)
    libQt5Network.so.5 => /lib64/libQt5Network.so.5 (0x00007f0417823000)
    libQt5Core.so.5 => /lib64/libQt5Core.so.5 (0x00007f0417181000)
    libGL.so.1 => /lib64/libGL.so.1 (0x00007f0416ef5000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f0416cd6000)
    libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f0416950000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f04165fb000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f04163e4000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f0416001000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f0415dea000)
    libpng16.so.16 => /lib64/libpng16.so.16 (0x00007f0415bb7000)
    libharfbuzz.so.0 => /lib64/libharfbuzz.so.0 (0x00007f041591f000)
    libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007f04156b3000)
    libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007f041522b000)
    libsystemd.so.0 => /lib64/libsystemd.so.0 (0x00007f0414fa1000)
    libicui18n.so.57 => /lib64/libicui18n.so.57 (0x00007f0414b2e000)
    libicuuc.so.57 => /lib64/libicuuc.so.57 (0x00007f0414789000)
    libicudata.so.57 => /lib64/libicudata.so.57 (0x00007f0412d0c000)
    libpcre2-16.so.0 => /lib64/libpcre2-16.so.0 (0x00007f0412a94000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f0412890000)
    libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007f041268e000)
    libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f041237a000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f0419716000)
    libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f0412148000)
    libX11.so.6 => /lib64/libX11.so.6 (0x00007f0411e0a000)
    libXext.so.6 => /lib64/libXext.so.6 (0x00007f0411bf8000)
    libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f0411942000)
    libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f041168d000)
    libgraphite2.so.3 => /lib64/libgraphite2.so.3 (0x00007f0411461000)
    libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x00007f0411147000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f0410f3f000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f0410d19000)
    liblz4.so.1 => /lib64/liblz4.so.1 (0x00007f0410b04000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f04108db000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f0410668000)
    libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f0410440000)
    libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f041022f000)
    libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007f041001a000)
    libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f040fd96000)
    libXau.so.6 => /lib64/libXau.so.6 (0x00007f040fb92000)

$ ldd /usr/lib64/libmolsketch-qt5.so.0.5.1
    linux-vdso.so.1 (0x00007ffc03fea000)
    libQt5PrintSupport.so.5 => /lib64/libQt5PrintSupport.so.5 (0x00007f55fe6d4000)
    libQt5Svg.so.5 => /lib64/libQt5Svg.so.5 (0x00007f55fe47e000)
    libQt5Widgets.so.5 => /lib64/libQt5Widgets.so.5 (0x00007f55fdc32000)
    libQt5Gui.so.5 => /lib64/libQt5Gui.so.5 (0x00007f55fd574000)
    libQt5Core.so.5 => /lib64/libQt5Core.so.5 (0x00007f55fced2000)
    libGL.so.1 => /lib64/libGL.so.1 (0x00007f55fcc46000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f55fca27000)
    libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f55fc6a1000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f55fc34c000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f55fc135000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f55fbd52000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f55fbb3b000)
    libpng16.so.16 => /lib64/libpng16.so.16 (0x00007f55fb908000)
    libharfbuzz.so.0 => /lib64/libharfbuzz.so.0 (0x00007f55fb670000)
    libsystemd.so.0 => /lib64/libsystemd.so.0 (0x00007f55fb3e6000)
    libicui18n.so.57 => /lib64/libicui18n.so.57 (0x00007f55faf73000)
    libicuuc.so.57 => /lib64/libicuuc.so.57 (0x00007f55fabce000)
    libicudata.so.57 => /lib64/libicudata.so.57 (0x00007f55f9151000)
    libpcre2-16.so.0 => /lib64/libpcre2-16.so.0 (0x00007f55f8ed9000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f55f8cd5000)
    libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007f55f8ad3000)
    libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f55f87bf000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f55fec95000)
    libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f55f858d000)
    libX11.so.6 => /lib64/libX11.so.6 (0x00007f55f824f000)
    libXext.so.6 => /lib64/libXext.so.6 (0x00007f55f803d000)
    libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f55f7d87000)
    libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f55f7ad2000)
    libgraphite2.so.3 => /lib64/libgraphite2.so.3 (0x00007f55f78a6000)
    libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x00007f55f758c000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f55f7384000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f55f715e000)
    liblz4.so.1 => /lib64/liblz4.so.1 (0x00007f55f6f49000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f55f6d20000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f55f6aad000)
    libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f55f6885000)
    libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f55f6674000)
    libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007f55f645f000)
    libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f55f61db000)
    libXau.so.6 => /lib64/libXau.so.6 (0x00007f55f5fd7000)

$ ldd -r /usr/lib64/libobabeliface-qt5.so.0.5.1
    linux-vdso.so.1 (0x00007fff54ffe000)
    libmolsketch-qt5.so.0 => /lib64/libmolsketch-qt5.so.0 (0x00007f7c270fc000)
    libopenbabel.so.5 => /lib64/libopenbabel.so.5 (0x00007f7c26cb2000)
    libQt5PrintSupport.so.5 => /lib64/libQt5PrintSupport.so.5 (0x00007f7c26a44000)
    libQt5Svg.so.5 => /lib64/libQt5Svg.so.5 (0x00007f7c267ee000)
    libQt5Widgets.so.5 => /lib64/libQt5Widgets.so.5 (0x00007f7c25fa2000)
    libQt5Gui.so.5 => /lib64/libQt5Gui.so.5 (0x00007f7c258e4000)
    libQt5Core.so.5 => /lib64/libQt5Core.so.5 (0x00007f7c25242000)
    libGL.so.1 => /lib64/libGL.so.1 (0x00007f7c24fb6000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7c24d97000)
    libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f7c24a11000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f7c246bc000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f7c244a5000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f7c240c2000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f7c23ebe000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f7c23ca7000)
    libpng16.so.16 => /lib64/libpng16.so.16 (0x00007f7c23a74000)
    libharfbuzz.so.0 => /lib64/libharfbuzz.so.0 (0x00007f7c237dc000)
    libsystemd.so.0 => /lib64/libsystemd.so.0 (0x00007f7c23552000)
    libicui18n.so.57 => /lib64/libicui18n.so.57 (0x00007f7c230df000)
    libicuuc.so.57 => /lib64/libicuuc.so.57 (0x00007f7c22d3a000)
    libicudata.so.57 => /lib64/libicudata.so.57 (0x00007f7c212bd000)
    libpcre2-16.so.0 => /lib64/libpcre2-16.so.0 (0x00007f7c21045000)
    libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007f7c20e43000)
    libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f7c20b2f000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f7c2765d000)
    libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f7c208fd000)
    libX11.so.6 => /lib64/libX11.so.6 (0x00007f7c205bf000)
    libXext.so.6 => /lib64/libXext.so.6 (0x00007f7c203ad000)
    libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f7c200f7000)
    libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f7c1fe42000)
    libgraphite2.so.3 => /lib64/libgraphite2.so.3 (0x00007f7c1fc16000)
    libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x00007f7c1f8fc000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f7c1f6f4000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f7c1f4ce000)
    liblz4.so.1 => /lib64/liblz4.so.1 (0x00007f7c1f2b9000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f7c1f090000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f7c1ee1d000)
    libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f7c1ebf5000)
    libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f7c1e9e4000)
    libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007f7c1e7cf000)
    libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f7c1e54b000)
    libXau.so.6 => /lib64/libXau.so.6 (0x00007f7c1e347000)

My first question is: are binary files and libraries correctly linked? (I don't see molsketch-qt5 linked to libobabeliface-qt5.so)
Do you know any known regression with Qt-5.9.1?
Which tools/libraries molsketch needs to properly work?

Output from command-line:

$ molsketch-qt5
Info: ((null):0, (null)) Clearing list of molecules. Count: 0
Warning: ((null):0, (null)) :icons/document-new.svg:602:58: Could not resolve property: linearGradient5167
Warning: ((null):0, (null)) :icons/document-new.svg:602:58: Could not resolve property: linearGradient5167
Warning: ((null):0, (null)) :icons/document-open.svg:4290: Could not resolve property: pattern5614
Warning: ((null):0, (null)) :icons/document-open.svg:4290: Could not resolve property: pattern5626
Warning: ((null):0, (null)) :icons/document-open.svg:4290: Could not resolve property: pattern5614
Warning: ((null):0, (null)) :icons/document-open.svg:4290: Could not resolve property: pattern5626
Warning: ((null):0, (null)) QObject::connect: No such slot Molsketch::MolScene::convertImage()
Warning: ((null):0, (null)) :icons/preferences-system.svg:1713: Could not resolve property: linearGradient4636
Warning: ((null):0, (null)) :icons/preferences-system.svg:1713: Could not resolve property: linearGradient4592
Warning: ((null):0, (null)) :icons/preferences-system.svg:1713: Could not resolve property: linearGradient4247
Warning: ((null):0, (null)) :icons/preferences-system.svg:1713: Could not resolve property: linearGradient4636
Warning: ((null):0, (null)) :icons/preferences-system.svg:1713: Could not resolve property: linearGradient4592
Warning: ((null):0, (null)) :icons/preferences-system.svg:1713: Could not resolve property: linearGradient4247
Warning: ((null):0, (null)) :icons/help-contents.svg:7092: Could not resolve property: linearGradient3592
Warning: ((null):0, (null)) :icons/help-contents.svg:7092: Could not resolve property: linearGradient7999
Warning: ((null):0, (null)) :icons/help-contents.svg:7092: Could not resolve property: radialGradient2943
Warning: ((null):0, (null)) :icons/help-contents.svg:7092: Could not resolve property: linearGradient3592
Warning: ((null):0, (null)) :icons/help-contents.svg:7092: Could not resolve property: linearGradient7999
Warning: ((null):0, (null)) :icons/help-contents.svg:7092: Could not resolve property: radialGradient2943
Warning: ((null):0, (null)) QGraphicsScene::removeItem: item 0x5645a4d211b0's scene (0x0) is different from this scene (0x5645a46feb60)
Warning: ((null):0, (null)) QIODevice::write (QProcess): device not open
Warning: ((null):0, (null)) QGraphicsScene::removeItem: item 0x5645a4d211b0's scene (0x0) is different from this scene (0x5645a46feb60)
Info: ((null):0, (null)) Clearing list of molecules. Count: 0

Regards.

Discussion

<< < 1 2 (Page 2 of 2)
  • Hendrik Vennekate

    It seems that you are packaging from the archive's content rather than the install target's result. The result seems to make sense, though. I didn't think obabeliface should be a legitimate include as it's only used by the main app anyhow.

    Let's see what Antonio thinks. Then I'll upload my changes and you can start a new RPM build. Sounds alright?

    Also, I should probably really set up a Jenkins or something...

     
    • Alexander Ploumistos

      It seems that you are packaging from the archive's content rather than the install target's result. The result seems to make sense, though. I didn't think obabeliface should be a legitimate include as it's only used by the main app anyhow.

      I'm always daunted by devel and debug subpackages, I'm only fairly certain about the contents of the main package.

      Let's see what Antonio thinks. Then I'll upload my changes and you can start a new RPM build. Sounds alright?

      Sure thing.

       
    • Antonio Trande

      Antonio Trande - 2018-02-10

      It seems that you are packaging from the archive's content rather than the install target's result. The result seems to make sense, though. I didn't think obabeliface should be a legitimate include as it's only used by the main app anyhow.

      Following the install target, there is a incongruity between the headers automatically installed by Make and those ones preserved in the debugsource rpms; this situation turns on some warnings of rpmlint check tool.
      If you think that not all headers are useful for developing/debugging, please let us know which are really needed. Potential false-positive warnings can be ignored.

       
      • Hendrik Vennekate

        I'm totally open to any suggestions from your side. My reasoning was that if somebody wanted to use anything at all, it would be the libmolsketch part, not the app or the openbabel adapter. Is this assumption wrong? (or, more directly: what do you usually provide a -devel package for? An executable or a library?)

         
        • Antonio Trande

          Antonio Trande - 2018-02-10

          I'm totally open to any suggestions from your side. My reasoning was that if somebody wanted to use anything at all, it would be the libmolsketch part, not the app or the openbabel adapter. Is this assumption wrong?

          It's not wrong. We can leave everything as it is at present.

           
          • Hendrik Vennekate

            Ok, in that case: I just uploaded the fix with the header installation and the FSF addresses in the license texts (as well as the GPL 2 license text) as "snapshots/latest" and you should now be good to go for the package build.

             
            • Alexander Ploumistos

              I retrieved the newest snapshot, I reverted Antonio's patch and now I have in my spec file:

              %build
              %{qmake_qt5} "MSK_PREFIX=%{_prefix}" "MSK_INSTALL_PREFIX=%{_prefix}" "MSK_INSTALL_DOCS=%{_docdir}/%{name}" "MSK_INSTALL_LIBS=%{_libdir}/%{name}" "MSK_INSTALL_INCLUDES=%{_includedir}" ./Molsketch.pro
              %make_build
              
              %files devel
              %{_includedir}/lib%{name}/
              

              and these are the contents of the devel subpackage:

              usr/
              └── include
                  └── libmolsketch
                      ├── abstractxmlobject.h
                      ├── actions
                      │   ├── abstractitemaction.h
                      │   ├── abstractrecursiveitemaction.h
                      │   ├── alignmentaction.h
                      │   ├── arrowtypeaction.h
                      │   ├── arrowtypewidget.h
                      │   ├── bondtypeaction.h
                      │   ├── bondtypewidget.h
                      │   ├── coloraction.h
                      │   ├── connectaction.h
                      │   ├── deleteaction.h
                      │   ├── drawaction.h
                      │   ├── flipbondaction.h
                      │   ├── flipstereobondsaction.h
                      │   ├── frameaction.h
                      │   ├── frametypeaction.h
                      │   ├── frametypewidget.h
                      │   ├── genericaction.h
                      │   ├── incdecaction.h
                      │   ├── itemgrouptypeaction.h
                      │   ├── itemtypeaction.h
                      │   ├── itemtypeselectionaction.h
                      │   ├── itemtypewidget.h
                      │   ├── linewidthaction.h
                      │   ├── mechanismarrowaction.h
                      │   ├── multiaction.h
                      │   ├── periodictablewidget.h
                      │   ├── reactionarrowaction.h
                      │   ├── ringaction.h
                      │   ├── rotateaction.h
                      │   ├── textaction.h
                      │   └── transformcommand.h
                      ├── arrow.h
                      ├── arrowpopup.h
                      ├── atom.h
                      ├── atompopup.h
                      ├── bond.h
                      ├── boundingboxlinker.h
                      ├── commands.h
                      ├── constants.h
                      ├── coordinatedelegate.h
                      ├── coordinatemodel.h
                      ├── coordinatetableview.h
                      ├── electronsystem.h
                      ├── element.h
                      ├── fileio.h
                      ├── frame.h
                      ├── generics.h
                      ├── graphicsitem.h
                      ├── grid.h
                      ├── helptextemptydock.h
                      ├── helptextonemptylabel.h
                      ├── librarymodel.h
                      ├── libraryview.h
                      ├── lineupaction.h
                      ├── lonepair.h
                      ├── math2d.h
                      ├── mimemolecule.h
                      ├── molecule.h
                      ├── moleculemodelitem.h
                      ├── moleculepopup.h
                      ├── molscene.h
                      ├── molview.h
                      ├── propertieswidget.h
                      ├── qtversionmacros.h
                      ├── radicalelectron.h
                      ├── scenepropertiesdialog.h
                      ├── scenesettings.h
                      ├── stringify.h
                      ├── TextInputItem.h
                      ├── textitem.h
                      └── xmlobjectinterface.h
              

              The OpenBabel adapter source is no longer packaged (I understood that's what was agreed upon, if not I can repackage everything).

              Local builds were successful, I will do a couple more in koji to check if everything is OK in every arch and update the review request accordingly.
              I still see that molsketch-debuginfo.x86_64: E: useless-provides debuginfo(build-id), which I suspect that it can be ignored.
              OpenBabel integration works fine.

               
  • Antonio Trande

    Antonio Trande - 2018-02-08

    What about the license address issue? https://opensource.org/licenses/GPL-2.0 says it should be like this, but their street address seems to be different; maybe its a postal address only?

    It looks different than http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.

     
    • Hendrik Vennekate

      Ah, alright. The link is http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
      How urgently do I need to update? (obviously, LGPL is now also "lesser" instead of "library" GPL...)

       

      Last edit: Hendrik Vennekate 2018-02-08
      • Antonio Trande

        Antonio Trande - 2018-02-08

        It's not urgent.

         
        • Hendrik Vennekate

          Alright, I'd prefer waiting until the next release then.

           
        • Hendrik Vennekate

          Ok, by now I've fixed that as well (at least on github) ;)

           
  • Alexander Ploumistos

    Hello Hendrik,

    Molsketch packages have been built for f26, f27 and rawhide and they are queued for testing. I think you can close this bug now.
    Thank you both for all your help and efforts.

    Best regards
    Alex

     
    • Hendrik Vennekate

      Hi Alex,

      thanks for the heads-up; that's great news!
      And thank you and Antonio for sticking with me here and packaging for Fedora!

      Best wishes,
      Hendrik

       
  • Hendrik Vennekate

    • status: open-accepted --> closed-fixed
     
<< < 1 2 (Page 2 of 2)

Log in to post a comment.