今天在把linux下做的ipmsg移植到windows过程中,因为包含了一个开源库SimpleSocket,而这个库又引用了winsock2,没太注意就写下了下面的makefile: g++ -o tt tt.o -lws2_32 -lclsocketd 结果报出了N多丑陋的undefined reference..之后尝试将-lws2_32和-lclsocketd交换位置后,编译通过. 上网查了下,发现gcc编译时依赖库的顺序是很重要的.比如说,liba.a依赖于libb.a,则必须写成-la…