windows那个lib文件不是必须的,需要那玩意是msvc的链接器要求的,实际上绝大多数dll已经包含了链接需要的信息并不需要那个lib,比如mingw的链接器就可以直接链接dll。
而linux的so顺序问题是早期为了节约内存导致的,改下链接参数就没有so链接顺序的问题了。这两点并不是windows和linux系统的区别,纯粹是开发环境的区别。
同时*.lib有两种,一种是静态库,包含了若干目标文件,link时把obj文件链接到exe中或dll中;另一种与dll配合使用的不叫静态库,叫导入库,里头是符号,不包含源代码。







