E.2 Запуск Configure и Make
- Запустите сценарий оболочки configure. Он определит, какие возможности есть (или отсутствуют) в вашей системе, и создаст файл с именем Makefile из каждого файла с именем Makefile.in.
Полный список параметров configure можно получить, выполнив configure --help. Ниже приведен краткий обзор параметров 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 с более полной поддержкой больших массивов см. в разделе Сборка Octave с 64-разрядной индексацией.
--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>-
Выбрать библиотеку Magick++ для ввода-вывода изображений. Для многих дистрибутивов возможны значения
"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_r-
Не использовать (реентерабельный) Qhull, отключить
delaunay,convhullи связанные с ними функции. --without-qrupdate-
Не использовать QRUPDATE, отключить функции обновления QR-разложения и разложения Холецкого.
--without-umfpack-
Не использовать UMFPACK, отключить некоторые возможности работы с разреженными матрицами.
--without-z-
Не использовать библиотеку zlib, отключить сжатие файлов данных и поддержку новых форматов файлов MAT.
--without-framework-carbon-
Не использовать заголовочные файлы, библиотеки или специальный исходный код фреймворка Carbon, даже если проверка configure завершилась успешно (по умолчанию фреймворк Carbon используется, если он доступен). Этот параметр configure предназначен для платформы Mac.
--without-framework-opengl-
Не использовать заголовочные файлы, библиотеки или специальный исходный код фреймворка OpenGL, даже если проверка configure завершилась успешно. Если задан этот параметр, выполняется проверка заголовочных файлов и библиотек OpenGL в стандартных системных каталогах (значение по умолчанию — --with-framework-opengl). Этот параметр configure предназначен для платформы Mac.
Более общие сведения о параметрах командной строки configure см. в файле INSTALL. В этом файле также приведены инструкции по сборке в каталоге, отличном от каталога с исходными файлами.
- Запустите 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–2026 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/v9.4.0/Running-Configure-and-Make.html