mach-o相关内容
我的应用中有一些代码向我发送未捕获异常的堆栈跟踪. "0 CoreFoundation 0x3ad073ff + 186",“1 libobjc.A.dylib 0x39412963 objc_exception_throw + 30","2 CoreFoundation 0x3ad0729d + 0","3 基金会 0x39f3b7b3 +
..
'otool' 显示的方法的实现地址不断得到 1 个字节的偏移量. 例如,'otool -o' 给出 0xe99d5,但 'otool -tvV' 给出: +[NSError(SomeCategory) someMethod]:000e99d4 b590 推 {r4, r7, lr}000e99d6 f6441184 movw r1, 0x4984000e99da af01 添加 r7,s
..
从过去 xCode 4 开始抱怨链接器问题: ld:警告:为 MacOSX 构建,但链接到为构建的 dylibIOS:/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks//CoreGraphics.framework/Core
..
我在 Xcode 中构建了一些命令行实用程序(纯 C,没有 Cocoa).我希望他们所有人都使用我定制的 libpng 版本,并且我想通过在所有可执行文件之间共享一个库副本来节省空间(我不介意与他们重新分发 .dylib). 我需要做一些魔术来获取 libpng 导出符号吗? "Link Binary With Libraries" 是否静态构建阶段链接? Apple 的文档提到
..
我在编译时出错.好像很奇怪.它用作详细视图应用程序,但使用单个视图似乎不起作用.这是错误详细信息: 架构 i386 的未定义符号:“_OBJC_CLASS_$_RssArticle",引用自:RssXmlParser.o 中的 objc-class-refld:找不到架构 i386 的符号clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用) 解决方案 尝试以下步骤:
..
我从我的项目中删除了对 GoogleMobileAdsSDKiOS-7.1 的所有引用并添加了 7.4.1.当我在模拟器上运行应用程序时一切正常,但在设备上运行时出现应用程序 Mach-O 链接器错误. 重复符号 l017 在:/Users/ib/Desktop/Monster GoogleAds7.4.1/GoogleMobileAdsSdkiOS- 7.4.1/GoogleMobileAd
..
我正在尝试了解 Mach-o 文件的工作原理,并且在可用的在线资源方面取得了很大进展(特别是此处的 Apple 页面:http://developer.apple.com/library/mac/#documentation/developertools/conceptual/MachORuntime/Reference/reference.html),但我在理解符号存根的工作方式方面遇到了障碍.
..
我的应用程序中有一些代码可以向我发送未捕获异常的堆栈跟踪. "0 CoreFoundation 0x3ad073ff + 186","1 libobjc.A.dylib 0x39412963 objc_exception_throw + 30","2 CoreFoundation 0x3ad0729d + 0",“3 基金会 0x39f3b7b3 + 90","4 UI
..
'otool' 显示的方法的实现地址不断得到 1 个字节的偏移量. 例如,'otool -o' 给出 0xe99d5,但 'otool -tvV' 给出: +[NSError(SomeCategory) someMethod]:000e99d4 b590 推{r4,r7,lr}000e99d6 f6441184 movw r1,0x4984000e99da af01 添加 r7, sp,
..
我一直在尝试使用 NASM 在 Mac-OS 和 Windows 上学习 64 位汇编. 我的代码是 extern _printf.data 节msg db "Hello World!", 10, 0节.text全局_main_主要的:移动 rax, 0mov rdi, msg调用_printfmov rax, 0x2000001移动 rdi, 0系统调用 我用 编译它 nasm -
..
好吧,很长一段时间以来,我一直在尝试在运行时运行Proccesses来获取Loaded OSX Dylibs的基本地址. 在使用task_info之后,我已经在运行时使用dyld_all_image_infos转储了所有附加的Dylib,并在那里找到了名称和ImageLoadADDRESS,mach_header和segment_command. 但是我在运行时无法到达那里的基址.
..
我有一个dylib,为了使其能够在我的机器上运行,我不得不在xcode的目标设置中禁用库验证.是否可以仅出于测试目的而在没有付费开发人员帐户的情况下对其进行签名?任何有关如何执行此操作的链接或教程都会有很大帮助. 解决方案 取决于您获取库的方式. 在Xcode中构建 如果使用Xcode构建,则应该能够启用签名并告诉它使用 Team None 和 Sign在本地运行项目的签名和功
..
我编写了以下程序来遍历内存中的所有图像并转储其字符串表. #include#include#includeint main(int argc,char ** argv){uint32_t count = _dyld_image_count();对于(uint32_t i = 0; i
..
我很难理解文件中 @loader_path 所引用的绝对路径. user @ local:〜$ otool -L zlib.sozlib.so:@loader_path/../../libz.1.dylib(兼容版本1.0.0,当前版本1.2.7)/usr/lib/libgcc_s.1.dylib(兼容版本1.0.0,当前版本1.0.0)/usr/lib/libSystem.B.dylib(兼
..
我正在尝试制作类似于 dyld_decache 的dyld提取器.和 dsc_extractor .但是我在解析__objc_selrefs部分时遇到了麻烦. 出于测试目的,我使用了libsystem_trace.dylib,并且能够找到并解析其mach_header及其分段和节.但是,在__DATA .__ objc_selrefs部分中,我发现了0x201b8647fc8和0x201b8
..
当我创建一个小型Mac Mach-O可执行文件时,"Hello World"例如,用C语言编写,由于对齐填充,大小约为48k.但是,与此同时,我可以在.bss部分中定义100k的0-es(例如,通过指定100k个字符的静态数组),并且它仅将几个字节添加到磁盘上的可执行文件中. 我想知道为什么padding(我认为应该在加载后才起作用)也不被“打包".不知何故. 解决方案 您似乎不欣赏
..
正在解析内存中已经加载的Mach-O二进制文件... 有时候,字符串表,符号表等应位于它们的正确位置,有时会掉0x1000. 例如,我可以运行我的程序,并且 baseOffset + cmd-> symoff 是准确的.然后,我将进行单元测试,并且 baseOffset + cmd-> symoff + 0x1000 是准确的. baseOffset 始终有效,并指向有效的Mach标头
..
我正在尝试在使用.string伪操作的Mac OS X上运行一个程序集文件,显然无法识别.应该如何替换以下几行,使其在Mac上可以正常工作? ArrayIndexOutOfBoundsException: .long 35 .string "Array index out of bounds exception" 我用来执行汇编文件的行是: gcc -m32 -g3 runtime
..
如何创建HelloWorld iPhone mach-o文件? 我想在我的越狱iPhone上对其进行测试. 请帮助我! 解决方案 我在网上为您搜索时发现了这一点. http://mobiforge.com/developing/story/getting-从iPhone开发开始 它讨论了如何创建您的第一个"Hello World"应用程序.
..
该问题供英特尔x86组装专家解答.谢谢您的预先努力! 问题规范 我正在分析一个与 Mach-O 64位x86程序集相匹配的二进制文件.我目前正在使用MacOS 64 OS.该程序集来自 objdump . 问题是,当我学习汇编时,可以看到变量名"$ xxx",可以看到ascii中的字符串值,还可以看到被叫者名称,如"call _printf" 但是在这次大会上,我什么都没得
..