The file tests/setup.py.in passes an include_dirs but no library_dirs argument. This caused ld: -lrecode not found errors while I was building under GNU Guix. Adding library_dirs=['../src/.libs'] fixed the issue. (A cleaner solution would do that in a parameterized way akin to how include_dirs is set, I suppose. I'm leaving it up to you.)