coder.fftw.StandaloneFFTW3Interface.updateBuildInfo

Класс: coder.fftw.StandaloneFFTW3Interface
Пакет: coder.fftw

Обновите сведения о сборке для соединения с определенной библиотекой FFTW

Синтаксис

coder.fftw.StandaloneFFTW3Interface.updateBuildInfo(buildInfo, ctx)

Описание

coder.fftw.StandaloneFFTW3Interface.updateBuildInfo(buildInfo, ctx) обновляет сведения о сборке для ссылки на определенную библиотеку FFTW.

Класс коллбэка библиотеки FFT, производный от coder.fftw.StandaloneFFTW3Interface класс задает библиотеку FFTW.

Входные параметры

расширить все

После генерации кода информационный объект сборки содержит стандартный проект, опцию сборки и информацию о зависимостях. В updateBuildInfo метод, чтобы добавить информацию для связи с определенной библиотекой FFTW, используйте методы информации о сборке.

Реализуйте coder.BuildConfig getStdLibInfo метод, чтобы получить расширение файла конкретной платформы для использования во время ссылки.

Примеры

расширить все

В классе, который происходит от coder.fft.StandaloneFFTW3Interface, реализуйте метод updateBuildInfo который обновляет сведения о сборке для связи с определенной библиотекой FFTW.

Используйте updateBuildInfo метод в этом примере coder.fftw.StandaloneFFTW3Interface класс как шаблон.

% copyright 2017 The MathWorks, Inc.

classdef useMyFFTW < coder.fftw.StandaloneFFTW3Interface
     
    methods (Static)
        function th = getNumThreads
            coder.inline('always');
            th = int32(coder.const(1));
        end
                
        function updateBuildInfo(buildInfo, ctx)
            fftwLocation = '/usr/lib/fftw';
            includePath = fullfile(fftwLocation, 'include');
            buildInfo.addIncludePaths(includePath);
            libPath = fullfile(fftwLocation, 'lib');
            
            %Double
            libName1 = 'libfftw3-3';
            [~, libExt] = ctx.getStdLibInfo();
            libName1 = [libName1 libExt];
            addLinkObjects(buildInfo, libName1, libPath, 1000, true, true);
            
            %Single
             libName2 = 'libfftw3f-3';
            [~, libExt] = ctx.getStdLibInfo();
            libName2 = [libName2 libExt];
            addLinkObjects(buildInfo, libName2, libPath, 1000, true, true);
        end
    end           
end

В вашем updateBuildInfo метод, набор:

  • fftwLocation по полному пути для установки библиотеки.

  • includePath по полному пути к папке, содержащей файл заголовка библиотеки FFTW.

  • libPath по полному пути к папке, содержащей файлы библиотеки.

Введенный в R2017b