Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/48: Рейтинг темы: голосов - 48, средняя оценка - 4.81
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305

Необходимо собрать проект со всеми библиотеками в одну папку, чтобы можно было его передавать на другие ПК.

05.02.2019, 13:38. Показов 10010. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python 3.4, GUI wxPython.
Необходимо собрать проект со всеми библиотеками в одну папку, чтобы можно было его передавать на другие ПК. Мне не нужен .exe файл. Создал venv, добавил туда все библиотеки. Но в проекте используется PyGI 3.24.1 AIO, данный пакет устанавливается через exe-установочник. С этим пакетом ставится cairo. Сейчас, если запускать проект из venv, вылетает исключение
Python
1
2
3
File "D:\project\designer\svg2image.py", line 4, in <module>
    import cairo
ImportError: No module named 'cairo'
Можно как-то исправить? И возможно ли как-то добавить все, что было установлено из PyGI 3.24.1 AIO в библиотеки venv, или нужно всегда (на других ПК) устанавливать PyGI 3.24.1 AIO?

Добавлено через 4 часа 59 минут
Решено. ехе установочник просто распаковывает ряд библиотек в venv (нужно только указать путь к venv, автоматически он не определится).
Что касается cairo, то просто pip install pycairo
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.02.2019, 13:38
Ответы с готовыми решениями:

Как задать строку подключения, чтобы приложение можно было передавать на другие компьютеры?
У меня есть строка подключения, но нужно запустить приложение и на другом ПК. Как задать строку подключения так, чтобы можно было на другом...

В какую папку сохранить файл чтобы его можно было открыть?
У меня есть файл docx формата.По клику на кнопку он должен открываться,это сделано таким методом if (GUI.Button(new Rect(775, 5, 100,...

Какое добавочное сопротивление необходимо присоединить к амперметру,чтобы его можно было использовать как вольтметр?
2)Если к амперметру,рассчитанному на максимальную силу электрического тока 2 А,присоединить шнут с сопротивлением 0,5 Ом,то деление шкалы...

15
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
05.02.2019, 14:40
Цитата Сообщение от ioprst Посмотреть сообщение
собрать проект со всеми библиотеками в одну папку, чтобы можно было его передавать на другие ПК
Что мешает установить проект и все нужные библиотеки в Embed версию python?
И далее просто передавать сразу все - python+проект в одном каталоге?
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
05.02.2019, 18:26  [ТС]
Garry Galler, если я правильно вас понял, то у меня так и есть: программа, в папке с программой venv, в venv либы + питон.

Сделал запуск приложения через bat файл. Но при запуске висит консоль, можно как скрыть? Пробовал делать расширение pyw, все равно висит.
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,301
05.02.2019, 19:04
Цитата Сообщение от ioprst Посмотреть сообщение
Сделал запуск приложения через bat файл
а что в bat файле написано?
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
05.02.2019, 19:18
Цитата Сообщение от ioprst Посмотреть сообщение
Но при запуске висит консоль
start "" pythonw calc.pyw
1
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
06.02.2019, 10:47  [ТС]
Цитата Сообщение от tooru Посмотреть сообщение
а что в bat файле написано?
d:\projects\designer\venv\Scripts\pythonw.exe ../../designer.pyw
Что-то в этом роде, точно не помню (все на работе).

Garry Galler, спасибо, завтра проверю

Не по теме:

Ой, какое я странное название темы сделал, это все копипаст.



Добавлено через 11 часов 13 минут
Цитата Сообщение от Garry Galler Посмотреть сообщение
Что мешает установить проект и все нужные библиотеки в Embed версию python?
Можно немного объяснить о чем идет речь?
Копипаст питон папки?
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
06.02.2019, 10:52
Цитата Сообщение от ioprst Посмотреть сообщение
Необходимо собрать проект со всеми библиотеками в одну папку
есть PortablePython, можно на флешку ставить
http://portablepython.com/
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
06.02.2019, 11:08
Лучший ответ Сообщение было отмечено ioprst как решение

Решение

Цитата Сообщение от ioprst Посмотреть сообщение
Копипаст питон папки?
Не совсем. Хотя очень похоже.
Просто есть Portable(или точнее - встраиваемые) версии Python (python-3.x.x-embed-win32\win64), которые можно использовать без установки инсталлятором. Они более компактны так как стандартные библиотеки упакованы в zip.
И в случае когда вам необходимо отдать заказчику продукт готовый к запуску без лишних телодвижений, то можно поступать следующим образом:
1) Распаковываем только что загруженную Portable\Embedded версию Python
2) Устанавливаем в него pip через скрипт get-pip.py
3) Удаляем файл python3x._pth
4) Создаем для своего проекта setup.py + необходимый req.txt c зависимостями (зависимости можно заранее скачать в виде whl)
5) Устанавливаем свой проект в site-packages данной версии Python через setup.py (в самом setup.py желательно прописать entry_points) вместе с зависимостями
6) И в итоге получаем автономную версию проекта(в виде каталога, который можно скопировать куда хочешь). Проект можно будет запускать exe-шником из папки Scripts, который автоматически создается, если в сетапнике указаны entry_points - точки входа в ваше приложение. А на exe-шник можно и ярлык еще создать, чтобы запускать приложение с рабочего стола.

P.S. Я как-то мало использовал venv, но там ведь в виртуальное окружение не все копируется из глобальной установки Python?
1
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,301
06.02.2019, 11:24
Цитата Сообщение от Garry Galler Посмотреть сообщение
там ведь в виртуальное окружение не все копируется из глобальной установки Python?
Копируются файлы из DLLs и Scripts и из корня python, pythonw и dll'ки
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
06.02.2019, 11:33
Цитата Сообщение от tooru Посмотреть сообщение
Копируются файлы из DLLs и Scripts и из корня python, pythonw и dll'ки
Это я к тому спросил, что каталог venv не создает автономную версию Python, так как там не все. Поэтому копипаст самого каталога виртуального окружения ничего не даст.

Добавлено через 3 минуты
P.S. В этом плане отличается javascript, который для каждого проекта React (create-react-app) копирует 2 гига всех npm\nodejs зависимостей :-)
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
06.02.2019, 11:36
http://winpython.github.io/#overview
Миниатюры
Необходимо собрать проект со всеми библиотеками в одну папку, чтобы можно было его передавать на другие ПК.  
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
06.02.2019, 11:58
vic5710,
WinPython даже в Zero варианте содержит Ipython-7.7.1, scikit-learn-0.20.0, bokeh-1.0.0, jupyterlab-0.35.3 - и весит 27 mb как установочный exe и раза в три-четыре больше после установки.
В качестве чистой установки он не очень подходит.
А офиц. embed версии Python после распаковки - это каталог 12-13 mb.
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
06.02.2019, 12:07
Цитата Сообщение от Garry Galler Посмотреть сообщение
А офиц. embed версии Python после распаковки - это каталог 12-13 mb.
а где их посмотреть? чота не в курсе я
в ВыньПитон при установке можно отменить почти все ЕМНИП, да и 50 метров счас не проблема на флешку поставить
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
06.02.2019, 12:10
Цитата Сообщение от vic5710 Посмотреть сообщение
а где их посмотреть?
https://www.python.org/downloa... ython-372/
Те варианты, где написано embeddable zip file.
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
06.02.2019, 12:16  [ТС]
Для 3.4, к сожалению, их нет
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
06.02.2019, 12:54
ioprst,
тут вроде есть
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.02.2019, 12:54
Помогаю со студенческими работами здесь

Я написал расширение VS10, позволяющее скомпилировать проект так, чтобы его можно было запустить без NetFramework
Принцип действия, если кратко: импортирует в .exe те классы, которые используются. Компиляция дольше процентов на 10, исполняемый файл...

Как создать папку и обеспечить, чтобы можно было запускать эти программы, но нельзя было бы их скопировать, переместить, удалить
Подскажите, как создать папку и обеспечить, чтобы можно было запускать эти программы, но нельзя было бы их скопировать, переместить,...

Как добавить Android-проект в Eclipse с Android SDK, чтобы после его можно было запустить на виртуальной машине?
Вот у меня с интернета скачан готовый андрой-проект, но я не знаю как его добавить в остальные проекты чтобы запустить на виртуальной...

Модифицировать программу так, чтобы можно было передавать функцию в виде делегата
Модифицировать программу нахождения минимума функции так, чтобы можно было передавать функцию в виде делегата. Сделать меню с различными...

Подправить функцию main, так, чтобы вместо директории можно было передавать путь к файлу
Всем привет. Ребята помогите подправить функцию main , так, что бы в место директории можно было передавать путь к файлу. Сейчас...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru