为什么gcc不给我警告或错误
Why does not gcc give me warning or error?
我创建了共享库:
lib.h:
int fun( int a, int b);
lib.cpp:
#include <lib.h>
int fun ( int a, int b)
{
return a+b;
}
编译:
gcc -fPIC -c lib.cpp
gcc -shared -o -I ./header lib.so lib.o
我的图书馆位于/头球因此,汇编是成功的。之后我更改lib.cpp:
#include <lib.h>
int fun ( int a)
{
return a;
}
但什么也没发生。我想看看错误信息或者警告。为什么?
在C++中,定义第二个名称相同但参数不同的函数是合法的。在C语言中,编译库时会出现错误,但在C++中则不然。
现在,在任何一种语言中,使用库的任何人都会得到一个未定义的符号错误。标题中列出的函数没有在任何地方定义。
相关文章:
- 警告处理为错误这里有什么问题
- 隐式重新解释引用时强制转换,没有警告/错误
- 我在 C++ 代码中遇到错误警告:控制到达非空函数 [-Wreturn 类型] 的末尾
- 使用 reverse_iterator 而不是const_reverse_iterator并获得讨厌的编译器警告和错误
- GCC 警告和 gcc 错误消息之间的区别
- 在 eclipse 中,将宏重定义视为错误而不是警告
- 在 GCC 中启用"differing levels of indirection"警告/错误
- 当警告为错误时使用 [[已弃用]] 属性 (-Werror)
- G++ 编译器未为未定义的方法生成错误/警告
- 常量更改而不const_cast<> 为什么没有编译器警告/错误?
- 在制作过程结束时显示警告/错误的数量
- 钻石继承方案在 G++ 中编译良好,但在 VC++/Eclipse 中产生警告/错误
- 是否有任何方法可以避免警告/错误模板实例化回溯
- 如何捕获python警告错误并'bury'它?
- OSX:ld:警告:错误符号操作:适用于核心库
- Visual Studio的C4345警告错误吗?
- Visual Studio 上的 CRT SECURE 警告/错误是怎么回事?
- 禁用单个警告错误
- 如何在MSVC中为传递给变分函数的非POD参数启用警告/错误
- 警告错误问题