[debian-mysql] Bug#1006530: mariadb-10.6: FTBFS on x32: undefined reference to misc functions and files (regression from MariaDB 10.5)

John Paul Adrian Glaubitz glaubitz at physik.fu-berlin.de
Wed May 4 09:50:29 BST 2022


Hi!

> On Tue, 15 Mar 2022 15:22:15 +1100 Daniel Black <daniel at mariadb.org> wrote:
>> The error is earlier in the logs:
>>
>> -- Looking for sched_getcpu - found
>> -- Could NOT find PMEM (missing: PMEM_LIBRARIES PMEM_INCLUDE_DIR)
>> CMake Error at storage/innobase/CMakeLists.txt:345 (MESSAGE):
>> WITH_PMEM=ON cannot be satisfied
>>
>> When the configure stage fails, the builds outputs the
>> CMakeOutput/Error logs to complement this error earlier in the logs.
>> In this case its not useful but other times it is.
>>
>> so the architecture test in debian/rules isn't right as it adds 
> WITH_PMEM=ON.
>>
> 
> WITH_PMEM=ON doesn't seem explicitly added to the options on x32, so I'm 
> wondering if WITH_PMEM=OFF shouldn't be added explicitly on 
> architectures where libpmem is not available/supported

The problem here is the use of DEB_HOST_ARCH_CPU which is "amd64" on x32. It
has to be DEB_HOST_ARCH. Changing it to DEB_HOST_ARCH fixes the problem for me.

For consistency, I would also fix the use here:

# Cross building requires stack direction instruction
ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
    ifneq (,$(filter $(DEB_HOST_ARCH_CPU),alpha amd64 arm arm64 i386 ia64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64))
        CMAKEFLAGS += -DSTACK_DIRECTION=-1
    endif
    ifneq (,$(filter $(DEB_HOST_ARCH_CPU),hppa))
        CMAKEFLAGS += -DSTACK_DIRECTION=1
    endif
endif

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913



More information about the pkg-mysql-maint mailing list