Use _FILE_OFFSET_BITS=64 when building tests on Linux 32-bit systems
When cross-compiling spdlog from x86-64 to armhf, I ran spdlog-utests via qemu-arm and noticed that the "daily_logger rotate" test was failing because count_files always returned zero. Investigation of count_files revealed that readdir was returning nullptr immediately and setting errno to 75, i.e. "value too large for defined data type". I suspected this had something to do with some 64 vs. 32-bit thing, so I added _FILE_OFFSET_BITS=64 to the build and that seems to have made readdir happy. It might be safe to add _FILE_OFFSET_BITS=64 for all Linux builds, but it only seems to be necessary for the 32-bit case (which is a pretty small audience these days -- I'm only building for armhf to target a Raspberry Pi 3 running Raspbian, which runs in 32-bit mode).
Showing
Please register or sign in to comment