GCC libm não está funcionando

Eu tenho um programa c que chama sin, cos e acos. Quando eu compilo recebo os seguintes erros:

/tmp/ccDfW98S.o: In function `zip_search':
main.c:(.text+0xf30): undefined reference to `sin'
main.c:(.text+0xf45): undefined reference to `sin'
main.c:(.text+0xf66): undefined reference to `cos'
main.c:(.text+0xf7b): undefined reference to `cos'
main.c:(.text+0xf9c): undefined reference to `cos'
main.c:(.text+0xfc6): undefined reference to `acos'
collect2: ld returned 1 exit status

Eu sei que isso é comum quando você não usa o sinalizador -lm gcc. Eu estou usando esta bandeira. Estou ligando para o GCC assim:

gcc -o zipcode-server -lm main.c

Quando eu compilar em um dos meus computadores isso funciona bem. A única diferença que posso pensar é que isso não está funcionando em x86_64 e o computador em que ele trabalha é i686. Ambos são Ubuntu. O arquivo libm.a está presente no computador em que ele não está funcionando e não recebo nenhum erro dizendo que ele não pode ser encontrado. O que poderia estar causando isso?