Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Two compile errors on CentOS 7.9 / 3.10.0-1160.66.1.el7.x86_64, one fix already found (compat.h:777:48) #200

Open
mickdw2015 opened this issue May 24, 2022 · 7 comments

Comments

@mickdw2015
Copy link

[root@c17-09-nfcollector-00 ipt-netflow]# ./configure --enable-vlan --enable-direction --enable-promisc --disable-snmp-agent
Module version: 2.6-12-g40fefb2
Kernel version: 3.10.0-1160.66.1.el7.x86_64 (uname)
Kernel sources: /lib/modules/3.10.0-1160.66.1.el7.x86_64/build (found)
Checking for presence of include/linux/netfilter.h... Yes
netfilter.h uses CONFIG_NF_NAT_NEEDED... Yes
Checking for presence of include/linux/llist.h... Yes
Checking for presence of include/linux/grsecurity.h... No
Iptables binary version: 1.4.21 (detected from /sbin/iptables)
pkg-config for version 1.4.21 exists: Yes
Check for working gcc: Yes (gcc)
Checking for presence of xtables.h... Yes (using pkg-config)
Iptables include flags: (pkg-config)
Iptables module path: /usr/lib64/xtables (pkg-config)
Checking for DKMS... Yes.
Creating Makefile.. done.

If you need some options enabled run ./configure --help
Now run: make all install

[root@c17-09-nfcollector-00 ipt-netflow]# make all install
./gen_compat_def > compat_def.h-
Test function xt_family linux/netfilter_ipv4/ip_tables.h declared
Test struct timeval linux/ktime.h declared
Test struct proc_ops linux/proc_fs.h undeclared
Test function synchronize_sched linux/rcupdate.h declared
Test function nf_bridge_info_get linux/netfilter_bridge.h undeclared
Test struct vlan_dev_priv linux/if_vlan.h declared
Test function put_unaligned_be24 asm/unaligned.h undeclared
Test function totalram_pages linux/mm.h undeclared
Test symbol totalram_pages linux/mm.h declared
Test member nf_ct_event_notifier.ct_event net/netfilter/nf_conntrack_ecache.h undeclared
mv compat_def.h- compat_def.h
Compiling 2.6-12-g40fefb2 for kernel 3.10.0-1160.66.1.el7.x86_64
make -C /lib/modules/3.10.0-1160.66.1.el7.x86_64/build M=/root/ipt-netflow modules
make[1]: Entering directory `/usr/src/kernels/3.10.0-1160.66.1.el7.x86_64'
CC [M] /root/ipt-netflow/ipt_NETFLOW.o
In file included from /root/ipt-netflow/ipt_NETFLOW.c:77:0:
//
//
// fix found for this one in another issue -
//
///root/ipt-netflow/compat.h:777:48: error: missing binary operator before token "("
// # if defined __has_attribute && __has_attribute(fallthrough)
//
//
// but haven't yet found a work-around for this one -
//
/root/ipt-netflow/ipt_NETFLOW.c: In function ‘netflow_work_fn’:
/root/ipt-netflow/ipt_NETFLOW.c:4504:2: error: implicit declaration of function ‘__smp_processor_id’ [-Werror=implicit-function-declaration]
wk_cpu = __smp_processor_id();

cc1: some warnings being treated as errors
make[2]: *** [/root/ipt-netflow/ipt_NETFLOW.o] Error 1
make[1]: *** [module/root/ipt-netflow] Error 2
make[1]: Leaving directory `/usr/src/kernels/3.10.0-1160.66.1.el7.x86_64'
make: *** [ipt_NETFLOW.ko] Error 2
[root@c17-09-nfcollector-00 ipt-netflow]#


Not sure how to figure this one out. Let me know if there are other details needed, but certainly appreciate someone who knows looking at it!

@sriraagworks
Copy link

Hello @mickdw2015 was working on setting up the same in my lab.
Facing the same issue, was wondering what is the fix for the first error ?
"/opt/lab/flows/ipt-netflow/compat.h:777:48: error: missing binary operator before token "(""

And has anyone else found the fix for the second issue , any help is appreciated, thanks!

@kalamlacki
Copy link

kalamlacki commented Mar 7, 2023

Try this: https://github.com/kalamlacki/ipt-netflow
I reverted one change which should never be released.

@sriraagworks
Copy link

Thanks @kalamlacki
Alright will give this a try does this resolve both the above issues ?

For others reference:
Below was the fix for the first error
#195

@kalamlacki
Copy link

For sure it will solve the issue with :
/root/ipt-netflow/ipt_NETFLOW.c:4504:2: error: implicit declaration of function ‘__smp_processor_id’ [-Werror=implicit-

@kalamlacki
Copy link

release v2.6 successfully compiles under Centos 7.9

@sriraagworks
Copy link

Hi @kalamlacki , Thanks for the info/help.
I used this => https://github.com/kalamlacki/ipt-netflow
And made changes mentioned in => #195
And that helped, finally finished setting it up and i can see some flows coming in.

@gnought
Copy link

gnought commented May 1, 2023

For __smp_processor_id compile error, PR #217 will do a fix

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants