Package: libmariadb-dev
Version: 1:11.8.6-0+deb13u1
Severity: normal

Dear Maintainer,

libmariadb-dev cannot be installed for two architectures simultaneously,
which blocks cross-architecture C/C++ development. Two separate problems:

1. The package is not marked "Multi-Arch: same" (no Multi-Arch field at all).

2. Even if it were, it ships two genuinely per-architecture files at shared,
non-triplet paths, so the two arch instances would collide:

* /usr/bin/mariadb_config — a compiled ELF binary. The amd64 and arm64
copies differ at byte 19, i.e. the ELF e_machine field (offset 0x12):
amd64 = x86-64, arm64 = AArch64.

* /usr/include/mariadb/mariadb_version.h — differs only at:
#define MARIADB_MACHINE_TYPE "x86_64" vs "aarch64"
#define MARIADB_PLUGINDIR ".../x86_64-linux-gnu/..." vs aarch64

Status (verified):
- trixie: 1:11.8.6-0+deb13u1 — no Multi-Arch field, both files per-arch
- unstable: 1:11.8.8-1 — same, so not fixed for the next release

Suggested direction (maintainer's call):
* mariadb_config: make it architecture-independent (e.g. a small shell
wrapper that derives the multiarch path), or relocate the per-arch binary
so /usr/bin holds an arch-neutral file.
* mariadb_version.h: either move the header into the triplet include
directory, or drop/neutralise the two multiarch-dependent defines
(MARIADB_MACHINE_TYPE, MARIADB_PLUGINDIR) from the public header.
Then mark libmariadb-dev "Multi-Arch: same".

This is the substantive blocker behind #1140151 (libmariadb-dev-compat) and,
transitively, #1140150 (libpoco-dev). I have working repackaging that does
exactly the above across amd64/arm64 and am happy to share it or test
candidates.

Steps to reproduce:
dpkg --add-architecture arm64; apt-get update
apt-get install -s libmariadb-dev:amd64 libmariadb-dev:arm64

Thanks,
Dick Hollenbeck



-- System Information:
Debian Release: 13.4
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.12.74+deb13+1-amd64 (SMP w/16 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libmariadb-dev depends on:
ii libc6 2.41-12+deb13u2
ii libmariadb3 1:11.8.6-0+deb13u1
ii libssl-dev 3.5.5-1~deb13u2
ii zlib1g-dev 1:1.3.dfsg+really1.3.1-1+b1

libmariadb-dev recommends no packages.

libmariadb-dev suggests no packages.

-- no debconf information

Reply via email to