Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 638228 - =dev-db/myodbc-* invalid odbcinst files being installed
Summary: =dev-db/myodbc-* invalid odbcinst files being installed
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux MySQL bugs team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-20 16:08 UTC by Jaco Kroon
Modified: 2018-01-18 14:31 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
odbcinst.ini.m4 (odbcinst.ini.m4,125 bytes, text/plain)
2017-11-20 16:08 UTC, Jaco Kroon
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jaco Kroon 2017-11-20 16:08:51 UTC
Created attachment 505074 [details]
odbcinst.ini.m4

By default (on more than one machine now) I've seen that /usr/share/myodbc-5.3/odbcinst.ini references /usr/lib/libmyodbc5a.so isntead of /usr/lib/myodbc-5.3/libmyodbc5a.so.

In cases where myodbc 5.2 is installed as well, this causes crashes, and if not, it spits out very nasty difficult to figure out error messages.

Installation in ebuild of .so:

exeinto /usr/$(get_libdir)/${PN}-${MAJOR}
doexe ${prefix}/lib/libmyodbc5a.so ${prefix}/lib/libmyodbc5w.so

I suspect that goes even further in that on my system at least a readlink of the installed shows that it's in /usr/lib64 (equery files myodbc confirms, and on a multilib system there will eb a lib32 too).

Please find attached an updated odbcinst.ini file for the files/ folder which fixes this, in combination with an extra stanza for sed:

-e "s,/lib/,$(get_libdir),g"

Before this odbcinst.ini contains:

[myodbc-5.3]
Description     = MySQL ODBC 5.3 Driver 
Driver          = /usr/lib/libmyodbc5a.so

After:

myodbc-5.3]
Description     = MySQL ODBC 5.3 Driver 
Driver          = /usr/lib64/myodbc-5.3/libmyodbc5a.so

And:

# ls -la /usr/lib64/myodbc-5.3/libmyodbc5a.so
-rwxr-xr-x 1 root root 4840296 Nov 20 18:04 /usr/lib64/myodbc-5.3/libmyodbc5a.so

I do note that major overhaul was done between 5.3.8 and 5.3.8-r1.  I would recommend that -r2 be released with this fix, and that for 5.2 a -r1 is backported from 5.3 files so that they truly can be slotted (currently having multiple myodbc packages installed without editing the files in /usr/share/ is looking for trouble).

# equery files myodbc
 * Searching for myodbc ...
 * Contents of dev-db/myodbc-5.3.8-r1:
/usr
/usr/bin
/usr/bin/myodbc-installer-5.3
/usr/lib64
/usr/lib64/myodbc-5.3
/usr/lib64/myodbc-5.3/libmyodbc5a.so
/usr/lib64/myodbc-5.3/libmyodbc5w.so
/usr/share
/usr/share/doc
/usr/share/doc/myodbc-5.3.8-r1
/usr/share/doc/myodbc-5.3.8-r1/ChangeLog.bz2
/usr/share/doc/myodbc-5.3.8-r1/INSTALL.bz2
/usr/share/doc/myodbc-5.3.8-r1/Licenses_for_Third-Party_Components.txt.bz2
/usr/share/doc/myodbc-5.3.8-r1/README.bz2
/usr/share/myodbc-5.3
/usr/share/myodbc-5.3/odbc.ini
/usr/share/myodbc-5.3/odbcinst.ini

# emerge --info myodbc
Portage 2.3.13 (python 2.7.14-final-0, default/linux/amd64/13.0/no-multilib, gcc-5.4.0, glibc-2.25-r9, 4.13.10-uls x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.13.10-uls-x86_64-Intel-R-_Xeon-R-_CPU_E31230_@_3.20GHz-with-gentoo-2.4.1
KiB Mem:     8212168 total,   6264880 free
KiB Swap:     262140 total,    262140 free
Timestamp of repository gentoo: Mon, 20 Nov 2017 03:30:01 +0000
Head commit of repository gentoo: 43f12cee5009303ea52000cfc507b16621143e6b
sh bash 4.3_p48-r1
ld GNU ld (Gentoo 2.28.1 p1.0) 2.28.1
app-shells/bash:          4.3_p48-r1::gentoo
dev-lang/perl:            5.24.3::gentoo
dev-lang/python:          2.7.14::gentoo, 3.4.5::gentoo
dev-util/cmake:           3.8.2::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.32.1::gentoo
sys-apps/sandbox:         2.10-r4::gentoo
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.15-r2::gentoo
sys-devel/binutils:       2.28.1::gentoo
sys-devel/gcc:            5.4.0-r3::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1::gentoo
sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers)
sys-libs/glibc:           2.25-r9::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-extra-opts: 

uls
    location: /usr/local/portage
    masters: gentoo
    priority: 0

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA Intel-SDP"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--quiet-build"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_ZA.iso88591"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acpi amd64 apache2 bash-completion bzip2 cli cracklib crypt cxx diskio dri g729 gzip iconv iproute2 ipv6 ithreads jpeg kpathsea latin1 logrotate mad modules mysql ncurses nptl nptlonly openmp pam pcre png readline seccomp session sox ssl threads xetex zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="alias autoindex deflate dav dir env expires headers include info mime mime_magic negotiation rewrite status vhost_alias filter authz_core authz_host auth_basic auth_digest authz_default authz_user authn_core dav_fs dav_lock cgi unixd log_config socache_shmcb proxy proxy_fcgi version" APACHE2_MPMS="event" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en_GB en af" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby22" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-db/myodbc-5.3.8-r1::gentoo was built with the following:
USE=""
Comment 1 Larry the Git Cow gentoo-dev 2018-01-18 14:31:16 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd43ce7255418e999ec2247a8cb642d6a4b8dcae

commit dd43ce7255418e999ec2247a8cb642d6a4b8dcae
Author:     Brian Evans <grknight@gentoo.org>
AuthorDate: 2018-01-18 14:30:51 +0000
Commit:     Brian Evans <grknight@gentoo.org>
CommitDate: 2018-01-18 14:30:51 +0000

    dev-db/myodbc: Version bump for 5.3.9 and revbump 5.2.7
    
    Closes: https://bugs.gentoo.org/609420
    Closes: https://bugs.gentoo.org/638228
    Package-Manager: Portage-2.3.19, Repoman-2.3.6

 dev-db/myodbc/Manifest               |   2 +
 dev-db/myodbc/myodbc-5.2.7-r3.ebuild | 133 +++++++++++++++++++++++++++++++++++
 dev-db/myodbc/myodbc-5.3.9.ebuild    | 116 ++++++++++++++++++++++++++++++
 3 files changed, 251 insertions(+)