Статически скомпилируйте Python 3.6 с помощью OpenSSL. ⇐ Python
-
Гость
Статически скомпилируйте Python 3.6 с помощью OpenSSL.
Я пытаюсь статически скомпилировать Python 3.6 в Linux с помощью OpenSSL.
Моя сборка происходит в файле docker, но по сути это так:
$ ./configure --prefix=/task/build --disable-shared LDFLAGS="-static" $ сделать альтернативную установку С обновлением Modules/Setup.local, чтобы он выглядел так:
*статический* # Помощник модуля сокета для поддержки SSL; ты должен закомментировать другое # строку сокета выше и, возможно, отредактируйте переменную SSL: SSL=/usr/локальный/ssl _ssl _ssl.c \ -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ -L$(SSL)/lib -lssl -lcrypto Однако на этапе настройки я получаю сообщение об ошибке:
Шаг 9 из 14: RUN ./configure --prefix=/task/build --disable-shared LDFLAGS="-static" ---> Запуск в cb79ee47052b проверяю git... нашел проверка типа системы сборки... x86_64-pc-linux-gnu проверка типа хост-системы... x86_64-pc-linux-gnu проверка Python3.6... нет проверка Python3... нет проверка Python... Python проверка --enable-universalsdk... нет проверка --with-universal-archs... нет проверка MACHDEP... Linux проверка --without-gcc... нет проверка --with-icc... нет проверка gcc... gcc проверка работы компилятора C... нет configure: ошибка: в `/task/cpython': configure: ошибка: компилятор C не может создавать исполняемые файлы См. `config.log' для более подробной информации. Команда '/bin/sh -c ./configure --prefix=/task/build --disable-shared LDFLAGS="-static"' вернула ненулевой код: 77 Если я изменю команду настройки на:
$ ./configure --prefix=/task/build --disable-shared Я получаю скомпилированный двоичный файл, но он не связан статически с OpenSSL.
Что я делаю не так?
Спасибо!
Создать файл докеров:
ОТ amazonlinux:2017.03.1.20170812 ARG python_version=3.6.8 РАБОЧИЙ ПАРАМЕТР/задача КОПИРОВАТЬ Modules-Setup.local /task/Modules-Setup.local # Требования к установке ВЫПОЛНИТЬ ням установить -y \ gcc \ мерзавец \ gzip \ openssl-devel \ смола \ zlib \ zlib-развитие # Получить исходный код openssl и python ЗАПУСК клона git https://github.com/python/cpython.git РАБОЧИЙ ДИАР /задача/cpython ЗАПУСК git checkout tags/v${python_version} # Настраиваем сборку RUN ./configure --prefix=/task/build --disable-shared LDFLAGS="-static" # Добавить настройку модулей с пользовательскими значениями ЗАПУСТИТЕ cat /task/Modules-Setup.local >> /task/cpython/Modules/Setup.local ЗАПУСК cat /task/cpython/Modules/Setup.local # Строить ВЫПОЛНИТЬ сделать альтернативную установку # Заархивируйте результаты WORKDIR/задача/сборка ВЫПОЛНИТЬ tar --create --gzip --file=/task/python-${python_version}.tar.gz \ библиотека/бин/
Я пытаюсь статически скомпилировать Python 3.6 в Linux с помощью OpenSSL.
Моя сборка происходит в файле docker, но по сути это так:
$ ./configure --prefix=/task/build --disable-shared LDFLAGS="-static" $ сделать альтернативную установку С обновлением Modules/Setup.local, чтобы он выглядел так:
*статический* # Помощник модуля сокета для поддержки SSL; ты должен закомментировать другое # строку сокета выше и, возможно, отредактируйте переменную SSL: SSL=/usr/локальный/ssl _ssl _ssl.c \ -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ -L$(SSL)/lib -lssl -lcrypto Однако на этапе настройки я получаю сообщение об ошибке:
Шаг 9 из 14: RUN ./configure --prefix=/task/build --disable-shared LDFLAGS="-static" ---> Запуск в cb79ee47052b проверяю git... нашел проверка типа системы сборки... x86_64-pc-linux-gnu проверка типа хост-системы... x86_64-pc-linux-gnu проверка Python3.6... нет проверка Python3... нет проверка Python... Python проверка --enable-universalsdk... нет проверка --with-universal-archs... нет проверка MACHDEP... Linux проверка --without-gcc... нет проверка --with-icc... нет проверка gcc... gcc проверка работы компилятора C... нет configure: ошибка: в `/task/cpython': configure: ошибка: компилятор C не может создавать исполняемые файлы См. `config.log' для более подробной информации. Команда '/bin/sh -c ./configure --prefix=/task/build --disable-shared LDFLAGS="-static"' вернула ненулевой код: 77 Если я изменю команду настройки на:
$ ./configure --prefix=/task/build --disable-shared Я получаю скомпилированный двоичный файл, но он не связан статически с OpenSSL.
Что я делаю не так?
Спасибо!
Создать файл докеров:
ОТ amazonlinux:2017.03.1.20170812 ARG python_version=3.6.8 РАБОЧИЙ ПАРАМЕТР/задача КОПИРОВАТЬ Modules-Setup.local /task/Modules-Setup.local # Требования к установке ВЫПОЛНИТЬ ням установить -y \ gcc \ мерзавец \ gzip \ openssl-devel \ смола \ zlib \ zlib-развитие # Получить исходный код openssl и python ЗАПУСК клона git https://github.com/python/cpython.git РАБОЧИЙ ДИАР /задача/cpython ЗАПУСК git checkout tags/v${python_version} # Настраиваем сборку RUN ./configure --prefix=/task/build --disable-shared LDFLAGS="-static" # Добавить настройку модулей с пользовательскими значениями ЗАПУСТИТЕ cat /task/Modules-Setup.local >> /task/cpython/Modules/Setup.local ЗАПУСК cat /task/cpython/Modules/Setup.local # Строить ВЫПОЛНИТЬ сделать альтернативную установку # Заархивируйте результаты WORKDIR/задача/сборка ВЫПОЛНИТЬ tar --create --gzip --file=/task/python-${python_version}.tar.gz \ библиотека/бин/