ruby macho
v4.1.0
مكتبة روبي لفحص وتعديل ملفات Mach-O.
يتم استخدام تنسيق ملف Mach-O بواسطة نظامي التشغيل macOS وiOS (من بين أنظمة أخرى) كتنسيق ثنائي للأغراض العامة لملفات الكائنات والملفات التنفيذية والمكتبات الديناميكية وما إلى ذلك.
يمكن تثبيت Ruby-macho عبر RubyGems:
$ gem install ruby-macho
الوثائق الكاملة متاحة على RubyDoc.
مثال سريع لما يمكن أن يفعله روبي مفتول العضلات:
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 Public Source 2.0). ruby-macho
مرخص بموجب ترخيص MIT.
للحصول على الشروط الدقيقة، راجع ملف الترخيص.