mac下的一些总结

1. 平台问题

程序本身根据自身的平台 来加载适应的平台的动态库。
 如
    i386的程序 调用 i386的动态库
    X86_64的程序 调用X86_64的动态库

所以我们编写动态库是要考虑到平台的问题
 
 如在为safari浏览器编写插件的过程中,如果safari为x86_64的,我们就要编写x86_64的动态库。
 这样程序跟动态库才能匹配的上。
 
  查看一个库的平台可以用 file 库名
 
    假如查出的库名的平台为x86_64、i386、pcc
  而safari浏览器却为x86_64
  这时,我们就要为我们的动态库开始进行廋身的命令
    即  lipo 库名 -thin 平台 -output 新库名
    如:aa.dylib(x86_64、i386、pcc)
       lipo aa.dylib -thin x86_64 -output aa.dylib.x86_64
    这样生成的 a.dylib.x86_64 就只包含x86_64的平台了
    如果要调用 就把a.dylib.x86_64的x86_64去掉即可。


2.mac 调试程序打印日志

  在mac下 调试程序要打印日志。
  可以在程序里使用 命令的打印如:printf();
  然后在命令终端启用此程序即可。 如./程序名称 

原文地址:https://www.cnblogs.com/whbCNW/p/3364073.html