Библиотека Ruby для проверки и изменения файлов Mach-O.
Формат файла Mach-O используется macOS и iOS (среди прочих) в качестве двоичного формата общего назначения для объектных файлов, исполняемых файлов, динамических библиотек и т. д.
Ruby-macho можно установить через RubyGems:
$ gem install ruby-macho
Полная документация доступна на RubyDoc.
Быстрый пример того, что может сделать Ruby-Macho:
require 'macho'
file = MachO :: MachOFile . new ( "/path/to/my/binary" )
# get the file's type (object, dynamic lib, executable, etc)
file . filetype # => :execute
# get all load commands in the file and print their offsets:
file . load_commands . each do | lc |
puts " #{ lc . type } : offset #{ lc . offset } , size: #{ lc . cmdsize } "
end
# access a specific load command
lc_vers = file [ :LC_VERSION_MIN_MACOSX ] . first
puts lc_vers . version_string # => "10.10.0"
overcommit
и линтеров Чтобы поддерживать порядок в репозитории, документации и данных, мы используем инструмент overcommit
, который позволяет подключить перехватчики git к набору проверок качества. Самый быстрый способ выполнить настройку — запустить следующую команду, чтобы убедиться, что у вас есть все инструменты:
gem install overcommit bundler
bundle install
overcommit --install
loader.h
компании Apple, Inc в cctools/include/mach-o
. (Лицензия Apple на общедоступный исходный код 2.0). ruby-macho
распространяется по лицензии MIT.
Точные условия см. в файле лицензии.