很可能是静态库连接顺序的问题,
比如 主程序 main.exe 依赖 静态库 A, 而A又依赖 静态库 B
那么
g++ -o main.exe main.cpp -lB -lA 会出现“undefined reference”问题
正确应该是
g++ -o main.exe main.cpp -lA
-lB参考:
http://stackoverflow.com/questions/2624238/c-undefined-references-with-static-library