Missing `libm` linkage causes undefined symbol errors
envgap__MagicStack__asyncpg-1297
01 / FAILURE SIGNATURE
As reported upstream
No identifying execution failure has been captured.
Not a benchmark task.
- In a clean container the reported failure did not reproduce, or the known fix did not make the project run.
02 / ENVIRONMENT RECIPE
- Base commit
9b2b027224058e4590fdb9e41b5750a64dab1fce- Manifest
setup.py- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
MagicStack/asyncpg #1297 · read the original issue
When building asyncpg the compiled extension modules fail to load at runtime with errors like:
```bash
undefined symbol: log10 (./lib/python3.12/site-packages/asyncpg/pgproto/pgproto.cpython-312-aarch64-linux-gnu.so)
```
This happens because the C extensions use math functions from `libm` but don't explicitly link against it.
```bash
[./lib/python3.12/site-packages/asyncpg/pgproto/pgproto.cpython-312-aarch64-linux-gnu.so]:
linux-vdso.so.1 (0x0000ffff9e066000)
libc.so.6 => /lib64/libc.so.6 (0x0000ffff9ddce000)
/lib/ld-linux-aarch64.so.1 (0x0000ffff9e019000)
undefined symbol: log10 (./lib/python3.12/site-packages/asyncpg/pgproto/pgproto.cpython-312-aarch64-linux-gnu.so)
```
I'm building from an older commit, but this may be still an issue in newer versions.
## Environment
- **OS:** Amazon Linux 2023 (aarch64)
- **Python:** 3.12.7
- **Compiler:** Clang 20git
- **asyncpg commit:** d0797f1f7aed2d28253ec27adac39794a09b2690
04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]