vc++编译通过了.但生成exe文件时出现了one or more multiply defined symbols found请问可能是啥原因啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vc++编译通过了.但生成exe文件时出现了one or more multiply defined symbols found请问可能是啥原因啊相关的知识,希望对你有一定的参考价值。

fatal error LNK1169:one or more multiply defined symbols found;
此属于编译联接的常见问题之一,原因是在不同的源文件重复定义变量。
直接翻译过来就是:
发现一个或多个多重定义符号;或:一个或多个多重定义符出现;(即:你需要检查源代码中,有没有重复定义的符号).
参考技术A 楼上说的对,你可能重复包含了一些文件导致该文件中的变量被重复定义,解决办法可以试试将这些重复定义的变量在头文件中声明(extern int value;)然后在它对应的cpp文件中定义(int value)

VC中编译以后在Debug文件夹中没有exe文件,在网上查了些原因,修改了link中的参数,但还是没有生成exe文件

我是新手,请问各位大侠,这是怎么回事啊?

参考技术A 编译之后只生成目标文件,也就是.obj文件,是不会生成exe文件的。如果是独立的工程,只有在Build成功之后才生成exe文件。追问

文件夹里是空的,什么都没有啊

追答

编译成功之后不生成任何文件是不可能的。如果什么都没有,有可能编译时选择的并不是Debug版本,所以生成的文件在别的文件夹中。
如果实在找不到,可以在电脑里搜索一下最新产生或修改过的文件,应该就能找到那个文件夹了。

参考技术B 什么版本?能运行吗?追问

6.0版本,程序编译没有错误,但就是在Debug文件夹中没有exe文件,网上查了很多原因,但都没解决

追答

能看到运行界面的话说明已经生成了,打开【工程】->【设置】->【Debug】->【General】,看看其下得debug文件输出路径是否正确。

追问

就是没得界面啊,也没有EXE文件

追答

额~~
1、确定你的程序初始化代码没出错。。。(或者新建一个也行)
2、点击【编译】->【构建 xxx.exe】,没效果的话,看3
3、打开编译工具条,切换编译选项,单击“编译”按钮,不行就4
4、检查debug输出路径,link输出文件名是否对应,又不行的话,前往5
5、重装下好了!

可以QQ联系!呵呵~

以上是关于vc++编译通过了.但生成exe文件时出现了one or more multiply defined symbols found请问可能是啥原因啊的主要内容,如果未能解决你的问题,请参考以下文章

VC生成的exe文件,怎么样使之在没打开编译器的情况下就能执行

用vs2010编译fortran程序时出现rc.exe not found

vc中如何将dll件和exe编译成一个exe文件?

请教一下大神,我使用android killer编译时出现了aapt已停止运行,是啥问题

我用VC编写了一个exe,但是生成的pdb怎么也无法用于windbg调试

用 pyinstaller 打包生成 exe 后,执行时出现 Failed to execute script 错误