質問編集履歴

1

ご指摘ありがとうございます。変化が見られたところがあるので内容を更新いたしました。

2019/11/02 17:13

投稿

Sean93jpK4_nll
Sean93jpK4_nll

スコア6

test CHANGED
File without changes
test CHANGED
@@ -89,3 +89,83 @@
89
89
  macOS Catalina version 10.15.1
90
90
 
91
91
  NASM version 2.14.02 compiled on Sep 28 2019
92
+
93
+
94
+
95
+ ### 追記
96
+
97
+
98
+
99
+ ######otnさん
100
+
101
+
102
+
103
+ 2019/11/03 00:50
104
+
105
+
106
+
107
+ > _mainにして見ました。
108
+
109
+ startは2か所ありますが、両方 _main にしましたか?
110
+
111
+
112
+
113
+ 両方_mainにしたら
114
+
115
+ ```
116
+
117
+ ld: dynamic main executables must link with libSystem.dylib for architecture x86_64
118
+
119
+ ```
120
+
121
+
122
+
123
+ という別のエラーメッセージになりました。リンクと実行は
124
+
125
+ ```
126
+
127
+ % nasm -fmacho64 hello.asm && ld hello.o && ./a.out
128
+
129
+ ```
130
+
131
+
132
+
133
+ のままです。ご指摘ありがとうございます。
134
+
135
+
136
+
137
+ ######asmさん
138
+
139
+ 2019/11/03 01:20
140
+
141
+
142
+
143
+ > githubには
144
+
145
+ > > Linking: ld -macosx_version_min 10.7.0 -lSystem -o hello_world
146
+
147
+ と書かれていましたがこのオプションは試しましたか?
148
+
149
+
150
+
151
+ そのオプションでリンクしようとしたら
152
+
153
+
154
+
155
+ ```
156
+
157
+ ld: warning: -arch not specified
158
+
159
+ ld: warning: ignoring file /usr/lib/libSystem.dylib, missing required architecture unknown in file /usr/lib/libSystem.dylib (2 slices)
160
+
161
+ Undefined symbols for architecture unknown:
162
+
163
+ "start", referenced from:
164
+
165
+ implicit entry/start for main executable
166
+
167
+ ld: symbol(s) not found for architecture unknown
168
+
169
+ ```
170
+
171
+ というメッセージに変わりました。ちなみに中身の`start`だった2箇所はotnさんの指摘を受けて両方とも`_main`に変えました。ご指摘ありがとうございます。