Python - Py_Initialize nierozwiązany podczas kompilacji

Python2.7 skompilowałem statycznie bez żadnego błędu. Aby przetestować moją kompilację, używam następującego fragmentu kodu:

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

I kompiluję to tak:

$ 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

Wystąpił jednak błąd. gcc twierdzi, że jest sławnyundefined reference.

test.c :(. text + 0x1): Niezdefiniowane odniesienie do „Py_Initialize”

Co ciekawe, użyłem gcc z flagą gadatliwości (nie wkleję tutaj wyniku) i kompilator mówi, że używa mojego libpythona, ale nie mógł znaleźć referencji. Wymieniłem więc symbole mojej statycznej biblioteki 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

Widzimy toPy_Initialize jest poprawnie odwoływany w pythonrun.o. Nie wiem jednak, w jaki sposób kompilator wybrał właściwy plik obiektowy.

Moje pytania to:

Jak mogę się upewnić, że gcc używa poprawnego pliku obiektu w mojej lib .a?Czy jest coś nie tak w moich opcjach kompilacji?

Dzięki za pomoc.

questionAnswers(2)

yourAnswerToTheQuestion