Description of problem: The 'cqrlog' executable won't function as installed by default. It requires the /usr/lib64/libmysqlclient.so library, which is not listed as a dependency. Version-Release number of selected component (if applicable): cqrlog-2.2.0-4.fc28.x86_64 How reproducible: 100% Steps to Reproduce: 1. Install 'cqrlog' package w/ 'dnf install cqrlog' 2. Run 'cqrlog' from command prompt 3. Diagnostics appear on GUI Actual results: Window pops open saying 'Error during connection to database: Can not load default MySQL library ("libmysqlclient.so.16" or "libmysqlclient.so"). Check your installation.' Expected results: Additional info: Installing the 'mariadb-connector-c-devel' package resolves this; the application then works just fine.
Technically a package should not require a -devel package at runtime but I think this has to do with cqrlog not following the symlink to libmariadb.so and requiring it instead.
Ok, I patched cqrlog to look for libmariadbclient.so instead and a basic test seemed to work for me. Please test this updated scratch build. It's also of the latest release, 2.3.0. https://koji.fedoraproject.org/koji/taskinfo?taskID=27706583
cqrlog-2.3.0-1.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-fba71b52d5
cqrlog-2.3.0-1.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-cc58d7d472
cqrlog-2.3.0-1.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-cc58d7d472
cqrlog-2.3.0-1.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-fba71b52d5
Created attachment 1453609 [details] CQRLOG - transcript of install from testing repo Not working in F28 yet. Installed the package from updates-testing on a fresh install of XFCE spin. (Doing so also pulled in a few more testing packages - see transcript attachment.) Running cqrlog then produced the same library error.
Ok, when I tested locally I got this and thought it was OK: Cqrlog Ver:2.3.0 (001) Date:2018-06-17 **** DEBUG LEVEL 1 **** SSL libraries: /usr/lib64/libssl.so.1.0.2o /usr/lib64/libcrypto.so.1.0.2o Loading libmariadbclient: ************************** MySQL version: 10. ************************** I can't easily remove mariadb-connector-c-devel because it would cause other packages I need to be removed.
cqrlog-2.3.0-1.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.
cqrlog-2.3.0-1.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.
Created attachment 1498211 [details] git patch file for update This is a better patch for fixing the libmysqlclient.so <-> mariadb.so mess. Note that this does not fix everything. fpc is also broken for current mariadb as well. This works with the initial setup work but does not work for a local db instance that is forked by cqrlog. That instatiation uses the mysql.inc in fpcsrc which has mysqlclient.so hardwired.
See BZ #1643734, the related fpc bug I filed. The last comment is of note. I am not deep enough into mariadb/mysql packaging to offer much but clearly the advice in the mariadb changes is not complete. I am also not familiar with fpc and its ecosystem. Hint, my last touch of Pascal was in the '80s... In either event, this whole bit is fragile as well as opaque. I don't understand why upstream (either fpc or cqrlog) has to go to all this work to make the db connector a dynamic load, especially if mysql/mariadb is the only db option. Then again, such is way outside the scope of packaging. If you can just fix the buildrequires and/or requires to pick up a libmysqlclient.so linkage, go for it.
A devel package should not be required to run anything but this is such a mess I guess I'm just going to have to add it until fpc comes up with a better solution.
Patches as attachements are OK but a pagure pull request would be easier to implement. I went ahead and added the -devel package and kicked off a build. I canceled it but the changes are still checked in. Can you rebase the spec part of your patch and do a pull request in pagure? https://src.fedoraproject.org/rpms/cqrlog
cqrlog-2.3.0-3.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-aa1d2801fc
cqrlog-2.3.0-3.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-d141de0426
cqrlog-2.3.0-3.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-d141de0426
cqrlog-2.3.0-3.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-aa1d2801fc
cqrlog-2.3.0-3.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.
cqrlog-2.3.0-3.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.