初めてのObjective-Cを3分でコンパイル&実行@Terminal

nariXcode
Hello, World!
サンプルコード
Objective-Cの実装ファイルの拡張子は.m
です。今回、ファイル名はmain.m
とします。
(因みに、ヘッダーファイルの拡張子はCやC++と同じく.h
or .hpp
です)
1#import <Foundation/Foundation.h>
2
3int main(int argc, const char * argv[]) {
4 @autoreleasepool {
5 NSLog(@"Hello, World!");
6 }
7 return 0;
8}
冒頭は#include
ではなく、#import
であるところに気をつけてください。#import
はヘッダーファイルを多重に読み込まないようになっています。
Terminalでコンパイル&実行
clang
もしくはmake
コマンドでコンパイルできます。
clang -framework Foundation main.m -o hello
-framework Foundation
を省略すると以下のようなUndefined symbols for architecture arm64
というエラーが出ます。
Undefined symbols for architecture arm64:
"_NSLog", referenced from:
_main in main-46655b.o
"___CFConstantStringClassReference", referenced from:
CFString in main-46655b.o
"_objc_autoreleasePoolPop", referenced from:
_main in main-46655b.o
"_objc_autoreleasePoolPush", referenced from:
_main in main-46655b.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ビルドが成功したら普通に実行します。
./hello
実行結果例
2023-02-22 21:47:00.420 hello[64437:2627386] Hello, World!
Xcodeなら1分で
プロジェクト作成 (57秒)
- Xcodeを開きます
- shift
⇧
+ command⌘
+N
で新しいプロジェクトを作成します - テンプレート選択で、macOS > Command Line Toolsを選択します
- 言語の欄をSwiftからObjective-Cに変更します
- プロジェクト名は自由に決めてください


実行 (3秒)
command ⌘
+ R
、もしくは画面左上の再生ボタン▶︎を押します。

実行開始すると、Debug Areaと呼ばれる画面中央下に実行結果が表示されます。

Debug Areaを表示するにはcommand ⌘
+ shift ⇧
+ C
、非表示にするにはcommand ⌘
+ shift ⇧
+ Y
です。
ABOUT ME