回答編集履歴
2
追記
answer
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
実装ファイルがコンパイルされていないからです。
|
2
2
|
```
|
3
|
-
g++ -g -O0 -o main main.cpp calc.cpp
|
3
|
+
g++ -g -O0 -o main main.cpp calc.cpp -Wall
|
4
4
|
```
|
5
5
|
|
6
|
+
ついでにWallオプションも付けて、警告を敏感に出すようにしています。
|
7
|
+
|
6
8
|
---
|
7
9
|
> 定義が書かれていないヘッダをincludeしてなんで使えるようになるんですか?
|
8
10
|
|
1
追記
answer
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
文法上のエラーを見つつ、オブジェクトファイルを作ります。
|
14
14
|
その際、コンパイラはヘッダなどの情報を、言うなれば『盲信』します。
|
15
15
|
- **リンク**
|
16
|
-
オブジェクトファイル
|
16
|
+
オブジェクトファイルやライブラリを結び付ける処理です。
|
17
17
|
|
18
18
|
ご提示のコマンドでは、calc.cppのオブジェクトファイルが作られていません。
|
19
19
|
ですので、コンパイルは通っていますが**リンクエラー**を引き起こしています。
|