Данный файл призван помочь вам в создании и установке MindQuantum.
Для генерации двоичного wheel MindQuantum мы рекомендуем использовать build
из Pypa:
cd mindquantum
python3 -m build .
Однако полученное двоичное wheel может зависеть от некоторых внешних библиотек, расположенных в вашей системе. Поэтому, если у других пользователей не установлены такие же библиотеки или они установлены в другом нестандартном месте, то при распространении могут возникнуть проблемы.
Чтобы гарантировать, что все необходимые внешние зависимости включены в двоичное wheel-файл, вы можете указать на делокацию wheel при его сборке. На практике это означает их прямое включение в двоичный wheel для удаления любой зависимости от внешних (общих) библиотек системы.
Это предпочтительный метод сборки двоичных wheel, поскольку он зависит от Docker-образа (только на Linux) или стандартной версии Python для MacOS и Windows.
cd mindquantum
python3 -m cibuildwheel .
Если cibuildwheel
не может автоматически определить вашу платформу, или, например, вы хотите создать Linux wheel на MacOS, вам может потребоваться указать платформу:
cd mindquantum
python3 -m cibuildwheel --platform linux .
Дополнительную информацию о том, какие платформы предоставляются, можно получить с помощью команды python3 -m cibuildwheel --help
.
На Linux вы можете запускать скрипт непосредственно на любом компьютере, так как он использует Docker-образ для создания делокированных двоичных колёс. Если вы хотите собрать Linux двоичные колёса, это также работает на MacOS или Windows.
На MacOS cibuildwheel
установит официальную версию Python на вашем компьютере перед сборкой двоичных колёс. Не рекомендуется запускать скрипт на своём компьютере, если вы не знаете, что делаете.
На Windows cibuildwheel
будет использовать NuGet для установки официальной версии Python на вашей системе перед сборкой двоичных колёс. Как и на MacOS, не рекомендуется запускать скрипт на своём компьютере без понимания того, что вы делаете.
Если вы не хотите полагаться на cibuildwheel
, например, на MacOS, вы также можете автоматически вызывать auditwheel
или delocate
, указав переменную среды MQ_DELOCATE_WHEEL
после сборки wheel. Например:
cd mindquantum
MQ_DELOCATE_WHEEL=1 python3 -m build .
Если вы планируете распространять wheel среди людей, которые могут иметь разные системы, мы настоятельно рекомендуем попробовать указать переменную окружения MQ_DELOCATE_WHEEL_PLAT
. По умолчанию setup-скрипт предполагает 'Linux_x86_64'
на 64-битных компьютерах, но вы можете указать любую платформу, поддерживаемую auditwheel. Для более широкого распространения wheel мы рекомендуем установить MQ_DELOCATE_WHEEL_PLAT=manylinux2010_x86_64
, хотя это может привести к ошибкам при делокации wheel, если ваша версия компилятора слишком новая.
Вы можете использовать один из локальных скриптов сборки для настройки MindQuantum для локальной разработки:
build_locally.bat
(MS-DOS BATCH script);build_locally.ps1
(PowerShell script);build_locally.sh
(Bash script).За исключением небольших различий, функции всех трёх скриптов одинаковы. Все скрипты принимают флаги для отображения сообщений помощи (-h
, --help
, -H
, -Help
для Bash, PowerShell и MS-DOS batch). Вызовите выбранный вами скрипт, чтобы увидеть предоставленный им набор функций.
build
и запустите CMake;В следующий раз, когда вы запустите скрипт, он будет перекомпилировать Mindquantum только в том случае, если вы укажете опцию очистки или принудительно выполните шаг конфигурации CMAKE.
Дополнительные сведения можно найти в сообщениях помощи скрипта, используя ./build_locally.sh -h
или ./build_locally.sh --help
. Вывод показан ниже для справки.
Вот подробный список всех доступных опций CMake, которые можно настроить:
Название опции | Описание | Значение по умолчанию |
---|---|---|
BUILD_SHARED_LIBS | Сборка общих библиотек | OFF |
BUILD_TESTING | Включение сборки тестового комплекта | OFF |
CLEAN_3RDPARTY_INSTALL_DIR | Очистка каталога установки сторонних программ | OFF |
CUDA_ALLOW_UNSUPPORTED_COMPILER | Разрешение использования компиляторов CUDA, которые не поддерживаются | OFF |
CUDA_STATIC | Использование статической версии библиотеки Nvidia CUDA | OFF |
DISABLE_FORTRAN_COMPILER | Принудительное отключение компилятора Fortran для некоторых сторонних библиотек | ON |
ENABLE_CMAKE_DEBUG | Включение подробных выходных данных для отладки CMAKE | OFF |
ENABLE_CUDA | Включение использования кода CUDA | OFF |
ENABLE_GITEE | Использование gitee вместо github в качестве (некоторых) сторонних зависимостей | OFF |
ENABLE_MD | Компиляция с использованием флагов /MD, /MDd (только MSVC) | OFF |
ENABLE_MT | Компиляция с использованием флагов /MT, /MTd (только MSVC) | OFF |
ENABLE_PROFILING | Включение флагов компиляции для анализа | OFF |
ENABLE_RUNPATH | Приоритет использования RUNPATH вместо RPATH при связывании | ON |
ENABLE_STACK_PROTECTION | Включение защиты стека во время компиляции | ON |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )