Python - Py_Initialize não resolvido durante a compilação

Eu compilei estaticamente o Python2.7 sem nenhum erro. Para testar minha compilação, eu uso o seguinte snippet:

#include "Python.h"
int main()
{
   Py_Initialize();
}

E estou compilando assim:

$ gcc -static -I/path/to/python/header -L/path/to/my/staticpythonlib \ 
 -lpython2.7 -ldl -l_all_other_needed_lib /tmp/my_previous_snippet.c -o myouput

No entanto, ocorreu um erro. gcc afirma o famosoundefined reference.

test.c :(. text + 0x1): Referência indefinida para 'Py_Initialize'

Curiosamente eu usei o gcc com o flag de verbosidade (não vou colar o resultado aqui) e o compilador diz, ele está usando meu libpython, mas não conseguiu encontrar a referência. Então eu listei os símbolos da minha biblioteca estática python2.7:

$ nm /path/to/pythonlib |grep Py_Initialize
frozenmain.o           U Py_Initialize
pythonrun.o  0000009e9 T Py_Initialize
pythonrun.o  000000052 T Py_Initialize_Ex
main.o                 U Py_Initialize

Nós podemos ver issoPy_Initialize está corretamente referenciado em pythonrun.o. No entanto, não sei como o compilador escolheu o arquivo de objeto correto.

Minhas perguntas são:

Como posso ter certeza de que o gcc usa o arquivo de objeto correto na minha biblioteca .a?Há algo de errado nas minhas opções de compilação?

Obrigado pela ajuda.

questionAnswers(2)

yourAnswerToTheQuestion