Dubov 0 22 августа, 2019 Опубликовано 22 августа, 2019 · Жалоба программа на C++ Qt активно использует высокоуровневую интеграцию с питоном. По сути программа отправляет в интерпретатор строки и читает результаты из файла. При переносе на другой компьютер exe-файл на запускается по причине отсутствия в переменной PATH пути именно к моему питону с библиотеками. Можно как-то "научить" мой exe-шник брать библиотеки где нужно без правки PATH? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 29 23 августа, 2019 Опубликовано 23 августа, 2019 · Жалоба Положить их рядом с exe? Или прописать путь к ним в переменную PATH. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 16 23 августа, 2019 Опубликовано 23 августа, 2019 · Жалоба А что, в Венде библиотеки ищутся по %PATH%? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 29 23 августа, 2019 Опубликовано 23 августа, 2019 · Жалоба 7 минут назад, andrew_b сказал: А что, в Венде библиотеки ищутся по %PATH%? По умолчанию да. Вначале рядом с EXE потом path. Думаю прога может это изменить но вряд ли обычно это делают. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 24 августа, 2019 Опубликовано 24 августа, 2019 · Жалоба On 8/23/2019 at 1:25 AM, Dubov said: программа на C++ Qt активно использует высокоуровневую интеграцию с питоном. По сути программа отправляет в интерпретатор строки и читает результаты из файла. При переносе на другой компьютер exe-файл на запускается по причине отсутствия в переменной PATH пути именно к моему питону с библиотеками. Можно как-то "научить" мой exe-шник брать библиотеки где нужно без правки PATH? Запускайте свой exe в своей среде, через start. Все переменные окружения, если надо, можете прописать свои, адаптированные для данного PC. Вообще эта увязка должна предусматриваться самой программой, или хотябы через локальный конфигурацонный файл, ini, или (наверное) реестр. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kabdim 0 24 августа, 2019 Опубликовано 24 августа, 2019 · Жалоба Если exe ваш - можно динамически загрузить любую dll по любому удобному пути руками, через winapi. LoadLibrary etc. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dubov 0 30 августа, 2019 Опубликовано 30 августа, 2019 · Жалоба дело в том, что моя программа на C++ использует python. Для корректной работы необходимо чтобы PATH содержал пути к python. Я бы хотел положить python рядом с exe (на каталог выше) и сказать моему exe искать python там. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 30 августа, 2019 Опубликовано 30 августа, 2019 · Жалоба 28 minutes ago, Dubov said: дело в том, что моя программа на C++ использует python. Для корректной работы необходимо чтобы PATH содержал пути к python. Я бы хотел положить python рядом с exe (на каталог выше) и сказать моему exe искать python там. Это уже другой вопрос. Вам, наверное, нужна PythonXX.dll? Можно поместить ее в один каталог с исполняемым файлом, но обычно хорошим тоном является установка Питона на рабочу станцию, после чего Dll будет находиться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dubov 0 30 августа, 2019 Опубликовано 30 августа, 2019 · Жалоба 43 minutes ago, alexunder said: обычно хорошим тоном является установка Питона на рабочу станцию на рабочей станции уже может быть установлена версия питона, отличающейся от моей. мне нужно решение на подобии virtual env. как его реализовать для моего exe? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 31 августа, 2019 Опубликовано 31 августа, 2019 · Жалоба 12 hours ago, Dubov said: на рабочей станции уже может быть установлена версия питона, отличающейся от моей. мне нужно решение на подобии virtual env. как его реализовать для моего exe? Виртуальное окружение - это же чисто питоновская штука, когда интерпретатор можно запустить в другими переменными. А вот простой "экзешник", тут, увы, подсказать не могу. А почему бы Вам просто не поместить нужную Dll в папку с exe? Если Вам нужен целиком весь питон нужной версии, тогда лучше под него создавать свою переменную типа MYPYTHONPATH, с помощью которой ваша программа может находит нужную вам версию питона с всей обвесухой. Это можно сделать полуавтоматический, когда пользователь при первом запуске задаёт путь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dubov 0 2 сентября, 2019 Опубликовано 2 сентября, 2019 · Жалоба интересно, моя программа написана на C++ Qt. Python лежит в отдельной папке, Python не установлен (в переменной PATH его нет). В Qt я указываю расположение библиотеки питона в нужной папке и include там же. При попытке запустить программу из Qt Creator - программа не запускается(в консоли сообщение: приложение неожиданно завершилось). Устанавливаю питон как нужно. Приложение запускается из Qt Creator. Компилирую, получаю exe, удаляю питон(чищу PATH), питон остается только в отдельной папке как было изначально. Приложение работает как нужно (запускаю уже без Qt Creator) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 3 сентября, 2019 Опубликовано 3 сентября, 2019 · Жалоба 5 hours ago, Dubov said: интересно, моя программа написана на C++ Qt. Python лежит в отдельной папке, Python не установлен (в переменной PATH его нет). В Qt я указываю расположение библиотеки питона в нужной папке и include там же. При попытке запустить программу из Qt Creator - программа не запускается(в консоли сообщение: приложение неожиданно завершилось). Устанавливаю питон как нужно. Приложение запускается из Qt Creator. Компилирую, получаю exe, удаляю питон(чищу PATH), питон остается только в отдельной папке как было изначально. Приложение работает как нужно (запускаю уже без Qt Creator) Скорее всего, потому что инсталлятор питона кладет pythonXX.dll в поддиректорию Windows\System, откуда она находится по PATH Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться