Что делать, если я не обновляю?

Если вы не обновляете исходный код MEX, вы все еще можете создавать файлы MEX с помощью -compatibleArrayDims опция. Используйте этот флаг для обеспечения требуемого поведения между версиями MATLAB®. Если вы строите без -compatibleArrayDims флаг, тогда может произойти одно или несколько из следующих:

  • Увеличено количество предупреждений компилятора и/или ошибок от вашего собственного компилятора

  • Ошибки времени выполнения

  • Неправильные ответы

Можно ли запустить существующие двоичные файлы MEX?

Можно запустить существующие двоичные файлы MEX, не обновляя файлы для использования с 64-битным API. Однако несовместимость может помешать выполнению существующего файла MEX. Если ваш файл MEX не выполняется должным образом, выполните поиск mex в соответствующих примечаниях к релизу MATLAB и рассмотрите темы Вопросов совместимости».

Необходимо ли обновлять исходные файлы MEX на 64-Bit платформах?

Если вы создаете файлы MEX на 64-разрядных платформах или записываете независимые от платформы приложения, необходимо обновить файлы MEX. Для upgrade проверьте свой исходный код, внесите соответствующие изменения и перестроите с помощью mex команда.

Какие действия вы предпринимаете сейчас, зависит от того, используют ли ваши файлы MEX в настоящее время 64-битный API. Следующая таблица помогает вам идентифицировать следующие действия.

Состояние вашего исходного кодаСледующее действие

Я не планирую обновлять свой код.

Вы решили отказаться, и вы должны создать с помощью -compatibleArrayDims флаг. Однако в будущей версии MATLAB, слоя совместимости, с -compatibleArrayDims флаг, возможно, не поддерживается.

Я хочу обновить код. С чего начать?

Смотрите Обновление файлов MEX для использования 64-Bit API.

Я использую файлы MEX, но не имею доступа к исходному коду.

Попросите владельца исходного кода следовать шагам в Upgrade MEX Files to Use 64-Bit API.

Я использую сторонние библиотеки.

Спросите поставщика, поддерживают ли библиотеки 64-разрядную индексацию. Если нет, вы не можете использовать эти библиотеки для создания 64-битных файлов MEX. Создайте свой файл MEX с помощью -compatibleArrayDims флаг.

Если библиотеки поддерживают 64-разрядную индексацию, проверьте исходный код, следуя шагам в Upgrade MEX Files to Use 64-Bit API, а затем протестируйте.

Я обновил свой код в предыдущем релизе.

Никаких изменений не требуется. Однако вам больше не нужно использовать -largeArrayDims опция при построении файла MEX.

Мой файл MEX генерирует ошибки.

Необходимо перекомпилировать файл MEX из исходного кода. При использовании -compatibleArrayDims флаг не решает проблему, поэтому в исходном коде могут возникнуть несовместимости. Для получения информации о несовместимости смотрите Могу ли я запустить существующие двоичные файлы MEX?. MathWorks рекомендует вам обновить исходный код MEX, чтобы использовать 64-битный API.

Похожие примеры

Подробнее о