linux 编译libnids 出现错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 编译libnids 出现错误相关的知识,希望对你有一定的参考价值。

[root@li602-143 libnids-1.18]# make
cd src ; make static
make[1]: Entering directory `/tmp/test/libnids-1.18/src'
gcc -c -g -O2 -D_BSD_SOURCE -Wall -DLIBNET_VER=1 -DHAVE_ICMPHDR=1 -DHAVE_TCP_STATES=1 -DHAVE_BSD_UDPHDR=1 -I. -I/usr/local/include -I/usr/local/include -D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD -DHAVE_NET_ETHERNET_H killtcp.c
killtcp.c:103:6: error: #elif with no expression
make[1]: *** [killtcp.o] Error 1
make[1]: Leaving directory `/tmp/test/libnids-1.18/src'
make: *** [static] Error 2

参考技术A 把libnids-1.20/src/killtcp.c 的倒数第2,3行删掉或注释掉即可。
//#elif
//#error Something wrong with LIBNET_VER
参考技术B 脚本里面的语法有错误。 参考技术C 不好意思 ,我也不清楚 参考技术D 错误描述很清楚啊 103行 没有对应的elif表达式 你看看是不是漏写了fi之类的结束符了

无法使用 gcc 在 Linux 中编译任何 c++ 程序,出现一些奇怪的错误 [重复]

【中文标题】无法使用 gcc 在 Linux 中编译任何 c++ 程序,出现一些奇怪的错误 [重复]【英文标题】:Not able to compile any c++ program in Linux using gcc, getting some weird error [duplicate] 【发布时间】:2021-08-29 01:33:14 【问题描述】:

最近我运行了一个代码来改变终端输出的颜色。运行该 c++ 程序后,现在如果我在 Linux 中运行任何 c++ 程序,我会遇到一些奇怪的错误。我附上了错误图片。

【问题讨论】:

您好,欢迎来到 Stack Overflow。请分享产生错误的源代码以及您用来编译它的命令。 使用g++ 而不是gcc。后者适用于 C,而不是 C++。 规则require 将文本作为文本发布,而不是作为屏幕截图。建议下次再做。 【参考方案1】:

您似乎试图将 C++ 程序与 gcc 链接,该程序不会自动链接到 C++ 标准库。尝试改用 g++。

【讨论】:

以上是关于linux 编译libnids 出现错误的主要内容,如果未能解决你的问题,请参考以下文章

libnids 入侵检测

linux编译ruby1.8.7 出现OPENSSL错误

libnids校验和引起回放包不能正常捕捉

无法使用 gcc 在 Linux 中编译任何 c++ 程序,出现一些奇怪的错误 [重复]

RHEL linux下llvm的安装。安装出现的错误如下,怎么解决?或者知道怎么编译,教一下。

Linux下Qt的make编译出现大量错误