红联Linux门户
Linux帮助

编译程序出现重定义问题

发布时间:2009-04-09 11:55:43来源:红联作者:shiyan
源文件中只是引用了一些头文件,如下
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include

编译之后出现如下错误:

/usr/include/net/if.h:45: error: expected identifier before numeric constant
/usr/include/net/if.h:113: error: redefinition of 'struct ifmap'
/usr/include/net/if.h:128: error: redefinition of 'struct ifrep'
/usr/include/net/if.h:178: error: redefinition of 'struct ifconf'


初入linux,请教怎么回事啊?谢谢
文章评论

共有 6 条评论

  1. shiyan 于 2009-04-09 19:12:46发表:

    哦,谢谢啊。。。我查查看

  2. wang7131984 于 2009-04-09 15:56:10发表:

    net/if.h这个头文件有问题,有两种可能:
    1,你在查看net/if.h的过程中修改了这个头文件。
    2,就是在你上面的头文件中已经具有ifmap ifrep...的定义,这样就有重复定义。
    请你确定每个头文件的作用再将它包括进来
    还有一种可能就是你编译器的毛病。

  3. shiyan 于 2009-04-09 14:08:00发表:

    嗯,确实不是自己写的,只是想测试一下这些头文件能找到吗?呵呵,谢谢了
    不过,我改正之后编译时仍然出现上面的错误?怎么回事呢?

  4. Guboae 于 2009-04-09 12:41:44发表:

    坐着听课

  5. wang7131984 于 2009-04-09 12:23:53发表:

    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include
    估计不是你自己写的,要不怎么可能这么粗心大意

  6. wang7131984 于 2009-04-09 12:22:27发表:

    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include