E.2 Запуск Configure и Make
- Запустите скрипт оболочки configure. Это определит возможности вашей системы (или их отсутствие) и создаст файл Makefile из каждого файла Makefile.in.
Вот краткий обзор наиболее часто используемых опций configure при компиляции Octave:
--help-
Вывести сводку опций, распознаваемых скриптом configure.
--prefix=prefix-
Установить Octave в подкаталоги ниже prefix. Значение по умолчанию для prefix — /usr/local.
--srcdir=dir-
Искать исходники Octave в каталоге dir.
--disable-64-
Отключить использование 64-битных целых чисел для индексации массивов и использовать вместо них 32-битные. В системах с 32-битными указателями эта опция всегда отключена. Если скрипт configure определит, что ваша библиотека BLAS использует 32-битные целые числа, то операции с использованием следующих библиотек ограничены массивами с размерностями меньше, чем 2^{31} элементов:
- BLAS
- LAPACK
- QRUPDATE
- SuiteSparse
- ARPACK
Кроме того, следующие библиотеки используют
intвнутри, поэтому максимальные размеры задач всегда ограничены:- GLPK
- Qhull
См. Компиляция Octave с 64-битной индексацией для получения более подробной информации о компиляции Octave с полной поддержкой больших массивов.
--enable-address-sanitizer-flags-
Включить параметры компилятора -fsanitize=address и -fomit-frame-pointer для проверки доступа к памяти. Эта опция в основном используется для отладки Octave. Компиляция Octave с этой опцией негативно сказывается на производительности и не рекомендуется для общего использования. Она также может нарушать корректную работу графического интерфейса.
--disable-docs-
Отключить создание всех форм документации (Info, PDF, HTML). По умолчанию документация создаётся, но для этого вашей системе потребуются рабочие установки Texinfo и TeX.
--enable-float-truncate-
Эта опция позволяет усекать промежуточные результаты вычислений с плавающей точкой. Она необходима только для определённых платформ.
--enable-readline-
Использовать библиотеку readline для редактирования командной строки в терминальных средах. Эта опция включена по умолчанию.
--enable-shared-
Создавать динамические библиотеки (это значение по умолчанию). Если вы планируете использовать функции динамической загрузки, вам, вероятно, понадобится эта опция. Она сделает ваши файлы .oct значительно меньше, а на некоторых системах может потребоваться построение динамических библиотек для использования динамически связанных функций.
Вам также может потребоваться создать динамическую версию
libstdc++, если она ещё не существует в вашей системе. --with-blas=<lib>-
По умолчанию configure ищет лучшие библиотеки матриц BLAS в вашей системе, включая оптимизированные реализации, такие как бесплатная ATLAS 3.0, а также настроенные поставщиками библиотеки. (Использование оптимизированной библиотеки BLAS обычно приводит к многократно более быстрому выполнению матричных операций.) Используйте эту опцию, чтобы указать конкретную библиотеку BLAS, которую должен использовать Octave.
--with-lapack=<lib>-
По умолчанию configure ищет лучшие библиотеки матриц LAPACK в вашей системе, включая оптимизированные реализации, такие как бесплатная ATLAS 3.0, а также настроенные поставщиками библиотеки. (Использование оптимизированной библиотеки LAPACK обычно приводит к многократно более быстрому выполнению матричных операций.) Используйте эту опцию, чтобы указать конкретную библиотеку LAPACK, которую должен использовать Octave.
--with-magick=<lib>-
Выберите библиотеку для работы с изображениями. Возможные значения —
"GraphicsMagick"(по умолчанию) или"ImageMagick". --with-sepchar=<char>-
Использовать <char> в качестве разделителя путей. Эта опция полезна при работе Octave на системах, отличных от Unix.
--without-amd-
Не использовать AMD, отключить некоторые функции работы с разреженными матрицами.
--without-camd-
Не использовать CAMD, отключить некоторые функции работы с разреженными матрицами.
--without-colamd-
Не использовать COLAMD, отключить некоторые функции работы с разреженными матрицами.
--without-ccolamd-
Не использовать CCOLAMD, отключить некоторые функции работы с разреженными матрицами.
--without-cholmod-
Не использовать CHOLMOD, отключить некоторые функции работы с разреженными матрицами.
--without-curl-
Не использовать библиотеку cURL, отключить объекты ftp,
urlreadиurlwriteфункции. --without-cxsparse-
Не использовать CXSPARSE, отключить некоторые функции работы с разреженными матрицами.
--without-fftw3-
Использовать включённую библиотеку FFTPACK для вычисления Быстрого преобразования Фурье вместо библиотеки FFTW3.
--without-fftw3f-
Использовать включённую библиотеку FFTPACK для вычисления Быстрого преобразования Фурье вместо библиотеки FFTW3 при работе с числами одинарной точности (float).
--without-glpk-
Не использовать библиотеку GLPK для линейного программирования.
--without-hdf5-
Не использовать библиотеку HDF5, отключить чтение и запись файлов HDF5.
--without-opengl-
Не использовать OpenGL, отключить встроенный графический движок для построения графиков. Вам понадобится
gnuplotдля построения графиков. --without-qhull-
Не использовать Qhull, отключить
delaunay,convhull, и связанные функции. --without-qrupdate-
Не использовать QRUPDATE, отключить функции обновления QR и Холецкого.
--without-umfpack-
Не использовать UMFPACK, отключить некоторые функции работы с разреженными матрицами.
--without-zlib-
Не использовать библиотеку zlib, отключить сжатие данных файлов и поддержку последних форматов файлов MAT.
--without-framework-carbon-
Не использовать заголовки, библиотеки или код Carbon, даже если тест configure пройден (по умолчанию используется фреймворк Carbon, если он доступен). Это платформа-специфическая опция configure для систем Mac.
--without-framework-opengl-
Не использовать заголовки, библиотеки или код OpenGL, даже если тест configure пройден. Если задана эта опция, то проверяются заголовки и библиотеки OpenGL в стандартных системных местах (значение по умолчанию — --with-framework-opengl). Это платформа-специфическая опция configure для систем Mac.
См. файл INSTALL для более подробной информации о параметрах командной строки, используемых в configure. В этом файле также содержатся инструкции для компиляции в каталоге, отличном от каталога, где расположены исходные файлы.
- Запустите make.
Вам потребуется последняя версия GNU Make, так как Octave использует определённые функции, которые не всегда доступны во всех версиях make. Изменение файлов make Octave для работы с другими программами make вряд ли стоит времени; вместо этого мы просто рекомендуем установить GNU Make.
В настоящее время существует три варианта построения графиков в Octave: внешняя программа gnuplot, встроенный графический движок на базе OpenGL в сочетании с виджетами FLTK или Qt. Gnuplot — это интерактивная программа для построения графиков функций, управляемая командами.
Для компиляции Octave вам потребуется последняя версия
g++или другого компилятора ANSI C++. Кроме того, вам потребуется компилятор Fortran 77 илиf2c. Если вы используетеf2c, вам потребуется скрипт, подобныйfort77, который работает как обычный компилятор Fortran, объединяяf2cс вашим компилятором C в одном скрипте.Если вы планируете изменять парсер, вам также понадобятся GNU
bisonиflex. Если вы изменяете документацию, вам потребуется GNU Texinfo.GNU Make,
gcc(иlibstdc++),gnuplot,bison,flex, и Texinfo доступны во многих архивах анонимного FTP. Основной сайт — ftp://ftp.gnu.org, но он часто перегружен. Список сайтов, которые зеркалируют программное обеспечение с ftp://ftp.gnu.org, доступен по анонимному FTP с ftp://ftp.gnu.org/pub/gnu/GNUinfo/FTP.Для распаковки и компиляции Octave из исходного кода требуется около 1,4 ГБ дискового пространства (значительно меньше, 400 МБ, если вы не компилируете с символами отладки). Чтобы скомпилировать без символов отладки, попробуйте команду
make CFLAGS=-O CXXFLAGS=-O LDFLAGS=
вместо просто
make. - Если у вас возникли ошибки при компиляции Octave, сначала обратитесь к разделу Проблемы с установкой, чтобы найти список известных проблем и возможные решения. Если нет, см. Проблемы для получения информации о том, как сообщить об ошибках.
- После успешной компиляции Octave, запустите
make install.Это установит копию Octave, его библиотеки и документацию в целевой каталог. По умолчанию Octave устанавливается в следующие каталоги. В таблице ниже prefix по умолчанию равен /usr/local, version обозначает текущий номер версии интерпретатора, а arch — тип компьютера, на котором установлен Octave (например, ‘i586-unknown-gnu’).
- prefix/bin
-
Octave и другие исполняемые файлы, которые пользователи могут запускать напрямую.
- prefix/lib/octave-version
-
Библиотеки, такие как liboctave.a и liboctinterp.a.
- prefix/include/octave-version/octave
-
Файлы заголовков, распространяемые с Octave.
- prefix/share
-
Независимые от архитектуры данные.
- prefix/share/man/man1
-
Справочные страницы в формате Unix, описывающие Octave.
- prefix/share/info
-
Файлы info, описывающие Octave.
- prefix/share/octave/version/m
-
Файлы функций, распространяемые с Octave. Включает версию Octave, чтобы можно было установить несколько версий Octave одновременно.
- prefix/libexec/octave/version/exec/arch
-
Исполняемые файлы, запускаемые Octave, а не пользователем.
- prefix/lib/octave/version/oct/arch
-
Объектные файлы, которые будут динамически загружены.
- prefix/share/octave/version/imagelib
Изображения, которые распространяются с Octave.
© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v6.4.0/Running-Configure-and-Make.html