Cython статическая связь с Python Runtime? - PullRequest
7 голосов
/ 28 ноября 2011

У меня есть скрипт Python для Python 2.7, скажем так:

print("Hello World!")

Далее я превращаю это в C, используя:

python cython.py --embed helloworld.py

А потом я пытаюсь скомпилировать его статически:

gcc -IC:\Python27\include -LC:\Python27\libs helloworld.c -Wl,-Bstatic -lpython27
  -Wl,-Bdynamic

Но gcc просто создает двоичный файл, который использует среду выполнения python27.dll. Как я могу создать двоичный файл, который статически ссылается на среду выполнения?

1 Ответ

2 голосов
/ 25 сентября 2012

Если вы работаете с Linux или OS X, вы можете использовать инструмент для сборки моего движка, Schafer, который имеет «пустой» режим, который просто собирает Python статически (для всех поддерживаемых платформ, включая Windows ), вместе с несколькими стандартными модулями, и он также будет «цитонизировать» и вставлять в него ваши источники. Если это не соответствует вашим требованиям, вы все равно можете получить идеи из источника о том, что требуется, чтобы сделать то, что вы хотите достичь.

...