精易论坛

标题: fatal error LNK1169: one or more multiply defined symbols found静态连接失败 [打印本页]

作者: lzj339933    时间: 2016-2-20 20:41
标题: fatal error LNK1169: one or more multiply defined symbols found静态连接失败
开始静态链接...
LIBC.lib(crt0dat.obj) : error LNK2005: __cinit already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: _exit already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __exit already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __cexit already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __c_exit already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __C_Exit_Done already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __C_Termination_Done already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __exitflag already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __wpgmptr already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __pgmptr already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: ___winitenv already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __wenviron already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: ___initenv already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __environ already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: ___wargv already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: ___argv already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: ___argc already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __winminor already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __winmajor already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __winver already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __osver already defined in libcmt.lib(crt0dat.obj)
LIBC.lib(crt0dat.obj) : error LNK2005: __umaskval already defined in libcmt.lib(crt0dat.obj)
C:\Users\Administrator\Desktop\1111\我的音乐 5.exe : fatal error LNK1169: one or more multiply defined symbols found
静态连接失败

引用借用了别人的代码  


引用的代码能静态编译


自己的的代码也没问题


但是加起来就出现这个问题了


论坛的也搜索过了


帖子说, 首先修改tools.ini的配置把show_command_line=yes和retain_intermediate_files=yes打开,然后再进行编译,编译之后把编译输出的 命令部分提取出来


首先,tools.in这个文件没有


" 编译之后把编译输出的 命令部分提取出来"


这个是什么意思呢?

求解决办法




作者: 心跳的回忆    时间: 2016-2-20 20:41
默认库“libcmt.lib”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
作者: lzj339933    时间: 2016-2-20 20:44
首先代码肯定是没有问题的,能F5调试运行.就是不能编译
作者: 冯古屋    时间: 2016-2-20 20:46
他说的tools文件应是就是
tools文件下的link.ini文件

补充内容 (2016-2-20 20:47):
e\tools\link.ini
作者: lzj339933    时间: 2016-2-20 20:47
冯古屋 发表于 2016-2-20 20:46
他说的tools文件应是就是
tools文件下的link.ini文件

你好i
请问
" 编译之后把编译输出的 命令部分提取出来"
这个是什么意思呢?
作者: 冯古屋    时间: 2016-2-20 20:53
lzj339933 发表于 2016-2-20 20:47
你好i
请问
" 编译之后把编译输出的 命令部分提取出来"

你修改了
首先修改tools.ini的配置把show_command_line=yes和retain_intermediate_files=yes打开

这步之后重新点击编译呀,估计重新编译会提示例子中所示的一些路径,然后找到关键的路径

补充内容 (2016-2-20 20:53):
按照说明书一步一步来呗
作者: lzj339933    时间: 2016-2-20 21:17
冯古屋 发表于 2016-2-20 20:53
你修改了
这步之后重新点击编译呀,估计重新编译会提示例子中所示的一些路径,然后找到关键的路径

并没有, 配置中show_command_line=yes和retain_intermediate_files=yes  这俩条一直都是yes
并没有出现文章中所述的命令代码. 就是这个问题卡着了.


补充内容 (2016-2-20 21:18):
设置为yes 编译输出框 提示是一样的. 改成no 提示也是一样的,
作者: 冯古屋    时间: 2016-2-20 21:24
lzj339933 发表于 2016-2-20 21:17
并没有, 配置中show_command_line=yes和retain_intermediate_files=yes  这俩条一直都是yes
并没有出现 ...

1、你的支持库是不是静态版?是→2,不是→A
2、你的静态连接器是不是有问题?有问题→B,不知道→3,没问题→4
3、你静态编译其他程序会不会出错?会→B,不会→4
4、请确认你这个程序没有问题。有问题→C,没问题→D
A、请下载静态版支持库!若没有静态版,只能直接编译!
B、重新下载静态连接器并重新配置静态文件!
C、修改你的程序,然后再试!
D、我已经无能为力了……
作者: lzj339933    时间: 2016-2-20 21:28
冯古屋 发表于 2016-2-20 21:24
1、你的支持库是不是静态版?是→2,不是→A
2、你的静态连接器是不是有问题?有问题→B,不知道→3,没 ...

好吧....贴吧我也找过了..
作者: lzj339933    时间: 2016-2-20 21:29
extra_args=/NODEFAULTLIB:"LIBC.lib"   修改这条命令就行了   link.ini  去掉分号
作者: 冯古屋    时间: 2016-2-20 21:31
lzj339933 发表于 2016-2-20 21:28
好吧....贴吧我也找过了..

最后一招,如果不是正版的话,换个版本试试看。
作者: lzj339933    时间: 2016-2-20 21:36
心跳的回忆 发表于 2016-2-20 21:31
默认库“libcmt.lib”与其他库的使用冲突;请使用 /NODEFAULTLIB:library

谢谢 已经解决了.注释掉了.




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4