jfb3615 / qat

The QAT libraries contain software for function manipulation, data collection, data modeling, and plotting. These are intended for students and practitioners of the physical sciences.
GNU Lesser General Public License v3.0
7 stars 4 forks source link

[Bug] Doesn't compile on Fedora. Fedora-specific instructions & changes requested #1

Open analoginterface0 opened 1 year ago

analoginterface0 commented 1 year ago

Greetings,

I'm a grateful student of your book from a far-off country and I enjoy studying your intuitively arranged "Applied Computational Physics" for my undergraduate courses. I've collected the Qat library as a standalone package in order to implement the examples assets for this book. Unfortunately, I had to make some modifications to few files and had to install packages with different names on my Fedora 38 (KDE) machine. Since I've gone through the toil solely I'm opening this issue to convey the fixes to you. It'd be my humble request to incorporate, include and implement necessary changes to these files and the instructions provided on here to adapt with Fedora-(like)-specific machines.

Required packages: gsl-devel subversion hdf5-openmpi-devel hdf5-tools eigen3-devel qt-creator qt5-qtsvg-devel

For 3D Coin4 qt5-qtbase-devel (libsimage isn't available on Fedora)

In Qhfd/src/qt.pro:

--16    QMAKE_CXX = mpicxx
--17    QMAKE_LINK = mpicxx
++16    QMAKE_CXX = /lib64/openmpi/mpicxx
++17    QMAKE_LINK = /lib64/openmpi/mpicxx
.
.
.
--25    PKGCONFIG += hd5-openmpi
++25    PKGCONFIG += ompi

These much compiles successfully on a Fedora machine for build without 3D. I haven't tested-out 3D yet though.

Also further instructions on how to source the headers for compiling examples will be much appreciated :)

jfb3615 commented 1 year ago

Hello analoginterface0!

And thanks for your contribution. I'll incorporate this as soon as possible. For that I want to get a Fedora machine and check your recipe, maybe I can also check the 3D build.

Best, --Joe Boudreau

analoginterface0 commented 1 year ago

Hey @jfb3615, here're all the fedora-specific changes I did available in this repo (master branch) for your kind perusal. As far as I've tested, this successfully compiles both with and without 3D libraries. But there's a catch in QatInventorWidgets/src/qt.pro which I'm not being able to find a good solution for. Although I made it work for now with a cheap-trick but it isn't ideal.

Regards, Analog Interface

jfb3615 commented 1 year ago

Hi, I've got now a Fedora platform to play with and I'm trying to figure out the best way to fix this.

I'll keep you posted.

Your contributions are greatly appreciated!

Best, --Joe


De : analoginterface0 @.> Envoyé : jeudi 28 septembre 2023 11:05 À : jfb3615/qat @.> Cc : Boudreau, Joseph Francis @.>; Mention @.> Objet : Re: [jfb3615/qat] [Bug] Doesn't compile on Fedora. Fedora-specific instructions & changes requested (Issue #1)

Hey @jfb3615https://github.com/jfb3615, here're all the fedora-specific changes I did available in this repo (master branch)https://gitlab.com/analog-interface/qat for your kind perusal. As far as I've tested, this successfully compiles both with and without 3D libraries. But there's a catch in QatInventorWidgets/src/qt.pro which I'm not being able to find a good solution for. Although I made it work for now with a cheap-trick but it isn't ideal.

Regards, Analog Interface

— Reply to this email directly, view it on GitHubhttps://github.com/jfb3615/qat/issues/1#issuecomment-1739474424, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKEISFC5TFYUBJ3JTEUNPUTX4WG4JANCNFSM6AAAAAA5GMFDEE. You are receiving this because you were mentioned.Message ID: @.***>

analoginterface0 commented 8 months ago

Sir,

I've had my time recently to test the new changes (and I've tinkered a little to suite to Fedora's preferences). This now compiles smoothly in Fedora except unless few lines are added in QatInventorWidgets/src/qt.pro at line 25 and 27 link here.

With due regards, Analog Interface

jfb3615 commented 7 months ago

Thanks, I'm trying to take care of this today. I'm installing fedora, will check out all of your changes and merge these into upstream if they check out on other platforms.

Also, I've started using cmake as an alternative to qmake, although I will keep both alive.

Hope to get back to you later today with some kind of report.

Thanks very much! --Joe


De : analoginterface0 @.> Envoyé : vendredi 16 février 2024 07:06 À : jfb3615/qat @.> Cc : Boudreau, Joseph Francis @.>; Mention @.> Objet : Re: [jfb3615/qat] [Bug] Doesn't compile on Fedora. Fedora-specific instructions & changes requested (Issue #1)

Sir,

I've had my time recently to test the new changes (and I've tinkered a little to suite to Fedora's preferenceshttps://gitlab.com/analog-interface/qat). This now compiles smoothly in Fedora except unless few lines are added in QatInventorWidgets/src/qt.pro at line 25 and 27 link herehttps://gitlab.com/analog-interface/qat/-/blob/master/QatInventorWidgets/src/qt.pro.

With due regards, Analog Interface

— Reply to this email directly, view it on GitHubhttps://github.com/jfb3615/qat/issues/1#issuecomment-1948270514, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKEISFAOD6A7EV2BWBAVM6LYT5DT7AVCNFSM6AAAAAA5GMFDEGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBYGI3TANJRGQ. You are receiving this because you were mentioned.Message ID: @.***>

jfb3615 commented 7 months ago

Hi,

I've started going through your work, starting from September. I've been merging it in, but not always exactly as you did. Mostly I'm trying to fix things so that it works both on Fedora and on the other platforms.

You can see some of this work on the "upstream" site.

I've got a lot more to do.

One small setback: after installing Fedora on a multiple-boot machine, I was able to work for a while before the network card became invisible! But only on the Fedora installation. So some of my changes are not verified on Fedora yet, though the should work there. Tomorrow I will go further with this.

Thanks for all of your contributions!

--Joe


De : analoginterface0 @.> Envoyé : vendredi 16 février 2024 07:06 À : jfb3615/qat @.> Cc : Boudreau, Joseph Francis @.>; Mention @.> Objet : Re: [jfb3615/qat] [Bug] Doesn't compile on Fedora. Fedora-specific instructions & changes requested (Issue #1)

Sir,

I've had my time recently to test the new changes (and I've tinkered a little to suite to Fedora's preferenceshttps://gitlab.com/analog-interface/qat). This now compiles smoothly in Fedora except unless few lines are added in QatInventorWidgets/src/qt.pro at line 25 and 27 link herehttps://gitlab.com/analog-interface/qat/-/blob/master/QatInventorWidgets/src/qt.pro.

With due regards, Analog Interface

— Reply to this email directly, view it on GitHubhttps://github.com/jfb3615/qat/issues/1#issuecomment-1948270514, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKEISFAOD6A7EV2BWBAVM6LYT5DT7AVCNFSM6AAAAAA5GMFDEGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBYGI3TANJRGQ. You are receiving this because you were mentioned.

analoginterface0 commented 7 months ago

Sir,

I'm really glad to know this, and have already seen some of your work on the upstream branch. Thanks a lot!

And about that fedora setback - funny bug true, but yeah it really gets-in when it does (because I've my own histories of plethora of funny & ironic bugs I encountered this through).

As always; it's in-fact my pleasure.

Regards, Analog Interface

-------- Original Message -------- On Feb 20, 2024, 23:28, jfb3615 < @.***> wrote: Hi,

I've started going through your work, starting from September. I've been merging it in, but not always exactly as you did. Mostly I'm trying to fix things so that it works both on Fedora and on the other platforms.

You can see some of this work on the "upstream" site.

I've got a lot more to do.

One small setback: after installing Fedora on a multiple-boot machine, I was able to work for a while before the network card became invisible! But only on the Fedora installation. So some of my changes are not verified on Fedora yet, though the should work there. Tomorrow I will go further with this.

Thanks for all of your contributions!

--Joe

jfb3615 commented 7 months ago

Hi Analog Interface!

So now I have the fedora installation working, both with the qmake and with cmake.

However, I have noticed that practically all of my example programs in ACP-Examples crash, This happens when setting the font. Did you happen to see this bug? I installed all the required fonts. Well, I will track it down and let you know. It seems to appear only on Fedora.

Here is some other information that you may be interested in:

      https://github.com/coin3d

These have the advantage that they work with Qt version 6. But they also have the disadvantage that you will not be able to just install them (yet) with a package manager. If you want to build them from source, you can compile soqt against either qt5 or qt6. Or you can wait until there is a new packaged version.

Thanks and best wishes! --Joe Boudreau


De : analoginterface0 @.> Envoyé : vendredi 23 février 2024 03:43 À : jfb3615/qat @.> Cc : Boudreau, Joseph Francis @.>; Mention @.> Objet : Re: [jfb3615/qat] [Bug] Doesn't compile on Fedora. Fedora-specific instructions & changes requested (Issue #1)

Sir,

I'm really glad to know this, and have already seen some of your work on the upstream branch. Thanks a lot!

And about that fedora setback - funny bug true, but yeah it really gets-in when it does (because I've my own histories of plethora of funny & ironic bugs I encountered this through).

As always; it's in-fact my pleasure.

Regards, Analog Interface

-------- Original Message -------- On Feb 20, 2024, 23:28, jfb3615 < @.***> wrote: Hi,

I've started going through your work, starting from September. I've been merging it in, but not always exactly as you did. Mostly I'm trying to fix things so that it works both on Fedora and on the other platforms.

You can see some of this work on the "upstream" site.

I've got a lot more to do.

One small setback: after installing Fedora on a multiple-boot machine, I was able to work for a while before the network card became invisible! But only on the Fedora installation. So some of my changes are not verified on Fedora yet, though the should work there. Tomorrow I will go further with this.

Thanks for all of your contributions!

--Joe

— Reply to this email directly, view it on GitHubhttps://github.com/jfb3615/qat/issues/1#issuecomment-1960931090, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKEISFCAS2QG2EMUNXNYEULYVBJD7AVCNFSM6AAAAAA5GMFDEGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNRQHEZTCMBZGA. You are receiving this because you were mentioned.

analoginterface0 commented 7 months ago

Hi,

Well I did notice an incompatibility in those ACP examples previously with Qat v3.0.3 (so I adopted few workarounds in those) but it wasn't crash related then but was build related. Since there isn't any repo for the examples, I couldn't publicly contribute to those.

Anyway, I went to run those a few moments ago with Qat v4.0, and ironically enough, it did crash (to wit: segfaulted). After that I migrated to Qt6 (qmake6 on fedora), build the Qat library afresh, went to compile few examples with qmake6 (along with my adoption; doesn't work without it), and it worked!

However though, I didn't encounter any Coin3D or SoQt related issues.

Here's a file from CH11/PROJECTILE/src/qt.pro. Added the QMAKE_LFLAGS var to make it work.