Кроссплатформенное приложение с Qt и Anaconda

#python #qt #anaconda

#python #qt #anaconda

Вопрос:

С помощью Qt я могу разрабатывать кроссплатформенные приложения. Но если я использую Anaconda в своем приложении Qt, будет ли мое приложение по-прежнему кроссплатформенным?

Anaconda работает на Python, поэтому она должна зависеть от интерпретатора Python. Влияет ли эта зависимость от интерпретатора Python на кроссплатформенность?

Кто-нибудь разрабатывал кроссплатформенные приложения с Qt и Anaconda? Какие-либо моменты, которыми можно поделиться?

Обновить

У меня уже есть приложение, разработанное с использованием Qt, QML и C . Мне нужна Anaconda для добавления некоторых математических функций.

Ответ №1:

Anaconda — это дистрибутив Python, который поставляется с Conda, менеджером пакетов для различных инструментов и библиотек.

По сути, Conda управляет средами, каждая из которых содержит собственный Python и собственный набор библиотек и инструментов, поверх операционной системы компьютера Windows, Mac OS или Linux.

Итак, можно разрабатывать кроссплатформенные приложения с Qt и Anaconda: вам просто нужно убедиться, что ваши зависимости доступны для всех операционных систем (перейдите на веб-сайт Anaconda cloud и проверьте, прежде всего: найдите нужную вам библиотеку / инструмент и посмотрите, доступно ли это для ваших целевых платформ).

В случае Qt мы видим, что версия 5.9.7 доступна в anaconda канале по умолчанию и доступна для этих платформ:

  • linux-32
  • linux-64
  • osx-64
  • выигрыш-32
  • выигрыш-64

Чтобы распространять ваше приложение, пользователям необходимо сначала установить Conda. Затем, если вы создадите пакет Conda для своего программного обеспечения, установить его будет так же просто, как сделать:

 conda create --name my_env
conda activate my_env
conda install -c my_conda_channel install my_package_name
  

Ваш код не обязательно должен быть написан на Python. Это прекрасно, что это написано
например, в C . Однако это все усложняет. В этом случае вам нужно будет установить компилятор, чтобы иметь возможность создавать свое программное обеспечение. Существуют пакеты Conda для компиляторов Linux и OSX. Для Windows подробнее здесь

Комментарии:

1. Очень полезно. Прочитав ваш пост, теперь я изучаю осуществимость плана: (1) Разработка моего приложения C Qt включает в себя некоторые вызовы пакетов Miniconda (2) Установка моего приложения (на компьютере пользователя) включает в себя запуск сценария, который устанавливает Miniconda и настраивает пакеты, которые вызываются двоичными файлами моего приложения… не уверен, что это хороший план…

2. Проблема, которую я вижу, заключается в компиляции вашего программного обеспечения. Я предлагаю вам доставить ваше приложение в пакете Conda, это значительно упростит развертывание на целевых компьютерах. С вашей стороны это означает, что вам нужно выполнить сборку вашего пакета с помощью conda. Удачи