extern が undefined reference エラーになる
コード
a.cpp:
const char * const Hello = "Hello.";
b.cpp:
extern const char * const Hello;
エラー
b.cpp:001: エラー: undefined reference to `Hello'
原因
C++ では const は、暗黙 static になるため。
解決方法
定義行に "extern" を付加する。
a.cpp:
extern const char * const Hello = "Hello.";
参考
c++ - extern const char* const SOME_CONSTANT giving me linker errors - Stack Overflow