我正在使用通过 MacPorts 安装的 gcc 4.8,旧的 C++11 代码将不再编译
如果我使用没有 -std=c++11 标志的编译器,它可以很好地使用这个测试代码
#include <cctype>
int main() {
std::isalnum('c');
return 0;
}
[bash] g++48 test.cpp
但是在 Mavericks 升级后,我得到以下编译错误:
[bash] g++48 -std=c++11 test.cpp
Undefined symbols for architecture x86_64:
"isalnum(int)", referenced from:
_main in ccvsKeqJ.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
有谁知道可能导致此问题的原因?我很感激任何帮助