[MDEV-7664] Multi-Arch support for Debian packages Created: 2015-03-05 Updated: 2020-04-14 Resolved: 2020-04-14 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Platform Debian |
| Affects Version/s: | 5.5, 10.0 |
| Fix Version/s: | 10.5.3 |
| Type: | Bug | Priority: | Major |
| Reporter: | Vitaliy Filippov | Assignee: | Otto Kekäläinen |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | foundation | ||
| Issue Links: |
|
||||||||||||||||||||
| Description |
|
Hi! Your Debian packages are built without Multi-Arch support, so it's not possible to install say 64-bit MariaDB in a 32-bit Debian system (for example I want to do it to experiment with TokuDB on my 32-bit server; I use 32-bit because it consumes considerably less memory compared to 64). I suggest you to make libmariadbclient18 Multi-Arch: same (and place libraries in /usr/lib/i386-linux-gnu or /usr/lib/x86_64-linux_gnu, not just in /usr/lib) (Multi-Arch: same means both 32-bit and 64-bit versions of package can coexist), and mysql-common and mariadb-common Multi-Arch: foreign (this means such package can satisfy the dependency of a package of a different architecture). That's a rather simple packaging improvement. More info is on https://wiki.debian.org/Multiarch/HOWTO |
| Comments |
| Comment by Elena Stepanova [ 2015-03-05 ] |
|
Assigning to otto for consideration/feedback. |
| Comment by Vitaliy Filippov [ 2015-03-05 ] |
|
P.S: mariadb-server-10.0 also depends on perl and libdbi-perl; libdbi-perl is not "multi-arch: foreign", so it should also be changed to "libdbi-perl:amd64 | libdbi-perl:i386" so 64-bit MariaDB could coexist with 32-bit Perl... |
| Comment by Otto Kekäläinen [ 2015-03-05 ] |
|
At the moment in Debian mariadb-common is defined as Multi-arch: foreign (https://github.com/ottok/mariadb-10.0/blob/master/debian/control#L47). Libmariadbclient18 does not exist as it conflicts with the libmysqlclient18 present in Debian repositories. The packaging at upstream mariadb.org has not yet meen updated to match the newer packaging standards that the official Debian project packages have. At that point this and other improvements will be merged upstream. Besides the control file stanzas, another thing to consider is the file locations and e.g. https://mariadb.atlassian.net/browse/MDEV-6135 is still open. |
| Comment by Vitaliy Filippov [ 2015-03-05 ] |
|
>At that point this and other improvements will be merged upstream. |
| Comment by Otto Kekäläinen [ 2016-07-09 ] |
|
Downstream Debian has now Multi-Arch: same for libmariadbclient18 |
| Comment by Otto Kekäläinen [ 2016-11-26 ] |
|
Upstream 10.2 has deprecated libmariadbclient18 in favour of libmariadb3. To get multi-arch working georg could maybe look into the patches at https://anonscm.debian.org/cgit/pkg-mysql/mariadb-client-lgpl.git/tree/debian/patches and import them, so that we could start installing libmariadb.so.3 in a multi-arch path instead of the current /usr/lib/mariadb/ path? |
| Comment by OndÅ™ej Surý (Inactive) [ 2017-04-29 ] |
|
I already sorted this out in MariaDB 10.3 packaging. |
| Comment by Daniel Black [ 2018-01-19 ] |
|
so closeable? debian_no_indirect_dependencies.patch didn't seem to be upstream in connector-c |
| Comment by Otto Kekäläinen [ 2020-02-27 ] |
| Comment by Otto Kekäläinen [ 2020-04-14 ] |
|
Final bits closed via https://github.com/MariaDB/server/commit/87a7968c23d32880920d129c0e3f467495dce10d and https://github.com/MariaDB/server/commit/4bc31a904f22290801075deed949733ba2133974 |