Microsoft C库中的重复符号



我正在编写Windows PE格式化对象文件的链接器,并且我可以进入Microsoft编译器生成的对象文件的阶段,但是当我尝试尝试链接与libcmt.lib我获得了很多重复的符号。

例如,cosl由库中的三个不同对象定义。这三个都涉及不同地方的定义,这三个看起来都是真实的,例如他们指出了名为.text$mn的文本段,并具有存储类IMAGE_SYM_CLASS_EXTERNAL

是这些是替代版本,并且应该根据某些标准选择一个链接器,还是我误解了有关PE库格式的语义的某些内容?

如注释中所述,OP未正确处理COMDAT部分。http://download.microsoft.com/download/e/a/eba1050f-a31d-436b-9281-9281-92cdfeae4b45/pecoff.doc

最新更新