Xcode快速入门

作者:罗上文,微信:Loken1,公众号:FFmpeg弦外之音

Xcode 是苹果的IDE集成开发工具,非常好用,但是功能也非常多,关于 Xcode 的详细内容可以阅读以下书籍。

  1. 《Xcode实战》- Fritz Anderson
  2. 《Xcode实战开发》- Maurice Kelly

本文主要介绍一些常用的 Xcode 开发技巧,例如如何查看他的 IDE 的编译构建过程的命令行日志,怎么设置常用参数等等。


首先我们随便创建一个 Hello World 的 Objective-C 项目,如下:

1-1

1-2

代码如下:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        NSLog(@"Hello, World!");
    }
    return 0;
}

现在这个项目是可以直接编译,断点调试的。下面我们主要关注几个常用的功能。


1,如何查看 Xcode 的编译日志

无论哪一款 IDE,VS2019、clion、Xcode,他们最后都是调用的命令来执行编译构建的。那 Xcode 调用的编译器命令是哪个呢?

我们可以点击左边导航栏的 show the report navigate 按钮, 查看编译日志。

1-3

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c-header -target x86_64-apple-macos12.3 ...省略日志

从日志可以看出来,Xcode 调的编译器命令默认就是 clang,而且所有参数都一目了然。

因此这个日志在排查编译、链接等问题的时候是非常好用的。


2,生成的可执行文件在哪里?

我们这个项目是一个 Command Line Tool 项目,也就是 Objective-C 的代码最后编译成一个命令行工具,那这个命令行是生成放在哪个目录的呢?

答:还是看 编译日志,编译日志里面会有这样一行提示:

CreateBuildDirectory /Users/loken/Library/Developer/Xcode/DerivedData/test-gvcajfcsyrvpwxapjscewdhnqemd/Build/Products/Debug
    cd /Users/loken/Documents/test/test.xcodeproj
    builtin-create-build-directory /Users/loken/Library/Developer/Xcode/DerivedData/test-gvcajfcsyrvpwxapjscewdhnqemd/Build/Products/Debug

我们可以看一下 Debug 这个目录,会发现命令行确实是在这里。

1-4

我们还可以用 otool 看一下 test 它依赖哪些动态库,命令如下:

cd /Users/loken/Library/Developer/Xcode/DerivedData/test-gvcajfcsyrvpwxapjscewdhnqemd/Build/Products/Debug

otool -L ./test

1-5


参考资料:

  1. Xcode - how to see build command and log?

版权所属 xianwanzhiyin.net 罗上文 2024 all right reserved,powered by Gitbook该文件修订时间: 2024-05-16 16:22:25

results matching ""

    No results matching ""