Gnurou / tagainijisho

A free Japanese dictionary and learning assistant
http://www.tagaini.net
GNU General Public License v3.0
358 stars 51 forks source link

Tagaini depending on QT 5.15 which is not available on Ubuntu #251

Closed MikeTango closed 2 years ago

MikeTango commented 2 years ago

Hi, is it possible to set the requirements to 5.12 or lower until there is a package release for ubuntu? Building my own fails hard.

hsandt commented 2 years ago

Indeed, the release on https://github.com/Gnurou/tagainijisho/releases/tag/1.1.91 requires Qt 5.15 which error on launch:

$ tagainijisho 
tagainijisho: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by tagainijisho)

I think it may work if I install Qt with the official Open Source online installer, but that's meant for development, so pretty heavy just to run an app.

I found some ppa, but because Qt is used by many apps, they say you must be careful when upgrading to preserve compatibility: https://launchpad.net/%7Esavoury1/+archive/ubuntu/qt-5-15 https://launchpad.net/~beineri

Upgrading to just Qt 5.15 should be fine, but just in case I'll hold it for now.

Gnurou commented 2 years ago

Hi,

The .deb packages are linked against the Qt 5.15.2 libraries of this PPA:

https://launchpad.net/~beineri

Although I cannot make any guarantees, I believe Qt is tested well enough that your existing applications will continue to work (worst case, you can always revert).

But that doesn't solve the problem that the .deb and .rpm packages are unusable on most systems that can install them, so they are not really useful. I'm thinking of releasing an AppImage instead, although I am not a big fan of this way of distribution. At least this would ensure an out-of-the-box working experience, at the cost of some extra resources.

Regarding supporting Qt 5.12, I'm not sure how much work that would be but I can maybe try to build on a Ubuntu virtual machine. The Qt API cannot have changed that much between 5.12 and 5.15 and I would be surprised if something essential to Tagaini was introduced in between. Again I am not making any promise, but I will try to look into it.

Cheers, Alex.

On Fri, Feb 18, 2022 at 10:41 PM gacapo7949 @.***> wrote:

I'm using Linux Mint 20.3 and tried changing the line in CMakeLists.txt from QT version 5.15 to 5.12 to match the libraries I have (just to see if it really needs v5.15), but when compiling it produced errors and it self aborted.

Is there any way for the developer to compile with the QT library statically linked and sharing those binaries? Thank you.

The errors when trying to compile:

In file included from /dev/shm/tagainijisho-1.1.91/src/core/kanjidic2/Kanjidic2Entry.h:21,

             from /dev/shm/tagainijisho-1.1.91/src/core/kanjidic2/BuildKanjiDB.cc:24:

/dev/shm/tagainijisho-1.1.91/src/core/EntriesCache.h:53:2: error: ‘QRecursiveMutex’ does not name a type

53 | QRecursiveMutex _loadedEntriesMutex;

[...]

/dev/shm/tagainijisho-1.1.91/src/core/kanjidic2/BuildKanjiDB.cc:197:54: error: ‘endl’ is not a member of ‘Qt’

197 | out << "// Autogenerated file, do not edit." << Qt::endl;

— Reply to this email directly, view it on GitHub https://github.com/Gnurou/tagainijisho/issues/251#issuecomment-1044543361, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABEGH52GIFYVWKTSMNGJLDU3ZD7RANCNFSM5OQ5K24A . You are receiving this because you are subscribed to this thread.Message ID: @.***>

Gnurou commented 2 years ago

Just released 1.1.92 which builds against Qt 5.12 on Ubuntu 20.04 - this was just a matter of reverting a few changes done when upgrading to Qt 5:

https://github.com/Gnurou/tagainijisho/releases/tag/1.1.92

The Debian package should now work as-is - please let me know if that's not the case!

Enjoy, Alex.

firatakandere commented 2 years ago

@MikeTango Alternatively, you can download Qt's online installer and install Qt 5.15 to your system and include it in your path. https://www.qt.io/download-open-source

Gnurou commented 2 years ago

Realized the deb of 1.1.92 would not run properly. I have released 1.1.93 to address that:

https://github.com/Gnurou/tagainijisho/releases/tag/1.1.93

This time properly tested.