7

Мы создаем большое приложение C++ на OS X Yosemite 10.10. Это приложение опирается на ряд сторонних библиотек, которые мы устанавливаем с помощью Homebrew до создания нашего приложения. Наш скрипт выпуска собирает все зависимости и включает их в окончательный пакет.

Несколько наших пользователей сообщили, что наше приложение не работает на их Mac. Например, пользователь, использующий macOS 10.12.6 на 27-дюймовом iMac в конце 2012 года, получает llegal instruction: 4 (все подробности здесь).

Похоже, что сбой происходит в одной из сторонних зависимостей OpenImageIO, которая была установлена на компьютере сборки, с помощью следующих команд:

brew tap homebrew/science
brew install openimageio

brew info openimageio сообщает, что он действительно был построен из источника:

/usr/local/Cellar/openimageio/1.7.17_1 (66 files, 16.0MB) *
  Built from source on 2017-11-27 at 19:15:19

Я подозреваю, что Homebrew включает расширенные наборы команд x86 при компиляции на сборочном компьютере.

Вот формула Homebrew для OpenImageIO:
https://github.com/Homebrew/homebrew-science/blob/master/openimageio.rb

Есть ли способ узнать, какие флаги или какие командные строки использует Homebrew?

В качестве альтернативы, есть ли способ глобально установить флаги Clang по умолчанию на MacOS?

0