当使用IBM AIX系统的xlc编译器编译动态库时, 出现如题所示的错误(所编译的源文件内容为空):
$ touch t.cpp
$ cat t.cpp
$ xlc -c -o t.o t.cpp
"t.cpp", line 1.0: 1540-0809 (W) The source file is empty.
$ xlc -qmkshrobj -o libt.so t.o
ld: 0711-244 ERROR: No csects or exported symbols have been saved.
以上命令中的t.cpp内容为空.
解决方案: 增加编译参数 -bnoentry -brtl -berok
$ xlc -qmkshrobj -o libt.so t.o -bnoentry -brtl -berok