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

Build error on macOS: tcp.c: error: 'TCP_FASTOPEN' undeclared (first use in this function); did you mean 'TCP_MAXOLEN'? #19

Open
barracuda156 opened this issue Jun 3, 2024 · 1 comment · May be fixed by #22

Comments

@barracuda156
Copy link

Build fails on earlier macOS versions.
With gcc-4.2:

[ 88%] Building C object CMakeFiles/httping.dir/tcp.c.o
/usr/bin/gcc-4.2 -DLOCALEDIR=\"/usr/share/locale\" -DVERSION=\"VERSION=3.6\" -I/opt/local/include -I/opt/local/libexec/openssl3/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/build -pipe -Os -DNDEBUG -I/opt/local/include -g -arch ppc -mmacosx-version-min=10.6 -Wall -pedantic -Wextra -D_DARWIN_C_SOURCE -DNCURSES_WIDECHAR -MD -MT CMakeFiles/httping.dir/tcp.c.o -MF CMakeFiles/httping.dir/tcp.c.o.d -o CMakeFiles/httping.dir/tcp.c.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c: In function ‘create_socket’:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c:48: warning: unused parameter ‘priority’
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c: In function ‘connect_to’:
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c:166: error: ‘TCP_FASTOPEN’ undeclared (first use in this function)
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c:166: error: (Each undeclared identifier is reported only once
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c:166: error: for each function it appears in.)
make[2]: *** [CMakeFiles/httping.dir/tcp.c.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 94%] Building C object CMakeFiles/httping.dir/utils.c.o
/usr/bin/gcc-4.2 -DLOCALEDIR=\"/usr/share/locale\" -DVERSION=\"VERSION=3.6\" -I/opt/local/include -I/opt/local/libexec/openssl3/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/build -pipe -Os -DNDEBUG -I/opt/local/include -g -arch ppc -mmacosx-version-min=10.6 -Wall -pedantic -Wextra -D_DARWIN_C_SOURCE -DNCURSES_WIDECHAR -MD -MT CMakeFiles/httping.dir/utils.c.o -MF CMakeFiles/httping.dir/utils.c.o.d -o CMakeFiles/httping.dir/utils.c.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/utils.c
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/build'
make[1]: *** [CMakeFiles/httping.dir/all] Error 2

With gcc-13.2:

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c: In function 'connect_to':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c:166:45: error: 'TCP_FASTOPEN' undeclared (first use in this function); did you mean 'TCP_MAXOLEN'?
  166 |                 setsockopt(fd, IPPROTO_TCP, TCP_FASTOPEN, &enable, sizeof(enable));
      |                                             ^~~~~~~~~~~~
      |                                             TCP_MAXOLEN
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/tcp.c:166:45: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [CMakeFiles/httping.dir/tcp.c.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/main.c: In function 'main':
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/main.c:1631:27: warning: unused variable 'recv_tos_len' [-Wunused-variable]
 1631 |                 socklen_t recv_tos_len = sizeof recv_tos;
      |                           ^~~~~~~~~~~~
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/HTTPing-3.6/main.c:956:13: warning: unused variable 'write_sleep' [-Wunused-variable]
  956 |         int write_sleep = 500; /* in us (microseconds), determines resolution of transmit time determination */
      |             ^~~~~~~~~~~
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_httping/httping/work/build'
make[1]: *** [CMakeFiles/httping.dir/all] Error 2

@folkertvanheusden Could we somehow fix this?

@barracuda156
Copy link
Author

Perhaps this was broken by 5c5cf07

barracuda156 added a commit to barracuda156/HTTPing that referenced this issue Sep 26, 2024
@barracuda156 barracuda156 linked a pull request Sep 26, 2024 that will close this issue
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

Successfully merging a pull request may close this issue.

1 participant