在程序中用到某个静态库,使用命令: gcc bin -llibrary.a object.o 结果发现找不到library.a中的某些函数符号 undefine reference to ... 通过nm命令查看library.a,发现该函数符号是存在的,说明library.a本身是没有问题的,百思不得其解,于是胡乱猜测,猜测可能是命令选项的顺序有问题,于是调整命令 gcc bin object.o -llibrary.a 编译成功,但是为什么呢?难道-l选项还有位置要求?于是通过man ld查…