On 2017/07/29 13:59, Christian Weisgerber wrote: > CMakeFiles/sshdump.dir/extcap/sshdump.c.o: In function > `local_interfaces_to_filter': > /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/extcap/sshdump.c:(.text+0xf22): > undefined reference to `local_interfaces_to_list' > cc: error: linker command failed with exit code 1 (use -v to see invocation) > ninja: build stopped: subcommand failed. > > > Full log attached.
This has started failing on i386 as well, I have no idea what changed to trigger it though. The symbols it complains about are in libwsutil which is present in the build directory. Re-running the command with -v to get the linker invocation, this is how it looks.. $ /usr/obj/ports/wireshark-2.2.8/bin/cc -v -Wall -Wextra -Wendif-labels -Wpointer-arith -Wformat-security -fwrapv -fno-strict-overflow -Wvla -Waddress -Wattributes -Wdiv-by-zero -Wignored-qualifiers -Wpragmas -Wno-overlength-strings -Wno-long-long -Wheader-guard -Qunused-arguments -Wc++-compat -Wdeclaration-after-statement -Wshadow -Wno-pointer-sign -Wold-style-definition -Wstrict-prototypes -Wunused-const-variable -Wshorten-64-to-32 -Wc99-extensions -O2 -pipe -fvisibility=hidden -DNDEBUG -Wl,--as-needed -pie CMakeFiles/dumpcap.dir/capture_opts.c.o CMakeFiles/dumpcap.dir/capture_stop_conditions.c.o CMakeFiles/dumpcap.dir/conditions.c.o CMakeFiles/dumpcap.dir/dumpcap.c.o CMakeFiles/dumpcap.dir/filter_files.c.o CMakeFiles/dumpcap.dir/ringbuffer.c.o CMakeFiles/dumpcap.dir/sync_pipe_write.c.o CMakeFiles/dumpcap.dir/ws_version_info.c.o -o run/dumpcap -L/usr/local/lib -L/usr/obj/ports/wireshark-2.2.8/build-i386/ui -L/usr/obj/ports/wireshark-2.2.8/build-i386/ui/gtk -L/usr/obj/ports/wireshark-2.2.8/build-i386/ui/qt -L/usr/obj/ports/wireshark-2.2.8/build-i386/capchild -L/usr/obj/ports/wireshark-2.2.8/build-i386/caputils -L/usr/obj/ports/wireshark-2.2.8/build-i386/codecs -L/usr/obj/ports/wireshark-2.2.8/build-i386/epan -L/usr/obj/ports/wireshark-2.2.8/build-i386/randpkt_core -L/usr/obj/ports/wireshark-2.2.8/build-i386/wiretap -L/usr/obj/ports/wireshark-2.2.8/build-i386/writecap -L/usr/obj/ports/wireshark-2.2.8/build-i386/wsutil -L/usr/obj/ports/wireshark-2.2.8/build-i386/run -Wl,-rpath,/usr/local/lib:/usr/obj/ports/wireshark-2.2.8/build-i386/ui:/usr/obj/ports/wireshark-2.2.8/build-i386/ui/gtk:/usr/obj/ports/wireshark-2.2.8/build-i386/ui/qt:/usr/obj/ports/wireshark-2.2.8/build-i386/capchild:/usr/obj/ports/wireshark-2.2.8/build-i386/caputils:/usr/obj/ports/wireshark-2.2.8/build-i386/codecs:/usr/obj/ports/wireshark-2.2.8/build-i386/epan:/usr/obj/ports/wireshark-2.2.8/build-i386/randpkt_core:/usr/obj/ports/wireshark-2.2.8/build-i386/wiretap:/usr/obj/ports/wireshark-2.2.8/build-i386/writecap:/usr/obj/ports/wireshark-2.2.8/build-i386/wsutil:/usr/obj/ports/wireshark-2.2.8/build-i386/run: run/libwritecap.a -lwsutil run/libcaputils.a -lpcap -lglib-2.0 -lgthread-2.0 -lglib-2.0 -lintl -lz -lgmodule-2.0 -lgcrypt -lgpg-error -lglib-2.0 -lglib-2.0 -lintl -lz -Wl,-rpath-link,/usr/X11R6/lib:/usr/local/lib OpenBSD clang version 4.0.0 (tags/RELEASE_400/final) (based on LLVM 4.0.0) Target: i386-unknown-openbsd6.1 Thread model: posix InstalledDir: /usr/bin "/usr/bin/ld" -e __start --eh-frame-hdr -Bdynamic -dynamic-linker /usr/libexec/ld.so -pie -o run/dumpcap /usr/bin/../lib/crt0.o /usr/bin/../lib/crtbegin.o -L/usr/local/lib -L/usr/obj/ports/wireshark-2.2.8/build-i386/ui -L/usr/obj/ports/wireshark-2.2.8/build-i386/ui/gtk -L/usr/obj/ports/wireshark-2.2.8/build-i386/ui/qt -L/usr/obj/ports/wireshark-2.2.8/build-i386/capchild -L/usr/obj/ports/wireshark-2.2.8/build-i386/caputils -L/usr/obj/ports/wireshark-2.2.8/build-i386/codecs -L/usr/obj/ports/wireshark-2.2.8/build-i386/epan -L/usr/obj/ports/wireshark-2.2.8/build-i386/randpkt_core -L/usr/obj/ports/wireshark-2.2.8/build-i386/wiretap -L/usr/obj/ports/wireshark-2.2.8/build-i386/writecap -L/usr/obj/ports/wireshark-2.2.8/build-i386/wsutil -L/usr/obj/ports/wireshark-2.2.8/build-i386/run -L/usr/bin/../lib -L/usr/lib --as-needed CMakeFiles/dumpcap.dir/capture_opts.c.o CMakeFiles/dumpcap.dir/capture_stop_conditions.c.o CMakeFiles/dumpcap.dir/conditions.c.o CMakeFiles/dumpcap.dir/dumpcap.c.o CMakeFiles/dumpcap.dir/filter_files.c.o CMakeFiles/dumpcap.dir/ringbuffer.c.o CMakeFiles/dumpcap.dir/sync_pipe_write.c.o CMakeFiles/dumpcap.dir/ws_version_info.c.o -rpath /usr/local/lib:/usr/obj/ports/wireshark-2.2.8/build-i386/ui:/usr/obj/ports/wireshark-2.2.8/build-i386/ui/gtk:/usr/obj/ports/wireshark-2.2.8/build-i386/ui/qt:/usr/obj/ports/wireshark-2.2.8/build-i386/capchild:/usr/obj/ports/wireshark-2.2.8/build-i386/caputils:/usr/obj/ports/wireshark-2.2.8/build-i386/codecs:/usr/obj/ports/wireshark-2.2.8/build-i386/epan:/usr/obj/ports/wireshark-2.2.8/build-i386/randpkt_core:/usr/obj/ports/wireshark-2.2.8/build-i386/wiretap:/usr/obj/ports/wireshark-2.2.8/build-i386/writecap:/usr/obj/ports/wireshark-2.2.8/build-i386/wsutil:/usr/obj/ports/wireshark-2.2.8/build-i386/run: run/libwritecap.a -lwsutil run/libcaputils.a -lpcap -lglib-2.0 -lgthread-2.0 -lglib-2.0 -lintl -lz -lgmodule-2.0 -lgcrypt -lgpg-error -lglib-2.0 -lglib-2.0 -lintl -lz -rpath-link /usr/X11R6/lib:/usr/local/lib -lcompiler_rt -lc -lcompiler_rt /usr/bin/../lib/crtend.o /usr/local/lib/libglib-2.0.so.4200.5: warning: warning: strcat() is almost always misused, please use strlcat() /usr/local/lib/libglib-2.0.so.4200.5: warning: warning: stpcpy() is dangerous; do not use it /usr/local/lib/libglib-2.0.so.4200.5: warning: warning: sprintf() is often misused, please use snprintf() /usr/local/lib/libglib-2.0.so.4200.5: warning: warning: vsprintf() is often misused, please use vsnprintf() /usr/local/lib/libglib-2.0.so.4200.5: warning: warning: strcpy() is almost always misused, please use strlcpy() CMakeFiles/dumpcap.dir/capture_opts.c.o: In function `capture_opts_add_opt': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x766): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x881): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x943): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x968): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xa96): undefined reference to `get_natural_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xbfd): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xc14): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xc9b): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xd0d): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xd37): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0xd95): undefined reference to `get_positive_int' CMakeFiles/dumpcap.dir/capture_opts.c.o: In function `capture_opts_add_iface_opt': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x1008): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x1048): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x1163): undefined reference to `cmdarg_err' CMakeFiles/dumpcap.dir/capture_opts.c.o: In function `capture_opts_trim_ring_num_files': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x141f): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/capture_opts.c:(.text+0x1442): undefined reference to `cmdarg_err' CMakeFiles/dumpcap.dir/dumpcap.c.o: In function `main': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x62): undefined reference to `cmdarg_err_init' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0xa7): undefined reference to `ws_add_crash_info' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x227): undefined reference to `init_process_policies' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x3c1): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x400): undefined reference to `get_positive_int' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x42e): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x486): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4f0): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x77f): undefined reference to `ws_inet_ntop4' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x7af): undefined reference to `ws_inet_ntop6' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x886): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x8b5): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0xdb2): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0xdde): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x1072): undefined reference to `relinquish_special_privs_perm' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x122f): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x12ce): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x12e9): undefined reference to `cmdarg_err_cont' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x1314): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x13c5): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x13df): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x13fc): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x1429): undefined reference to `cmdarg_err' CMakeFiles/dumpcap.dir/dumpcap.c.o:/usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x143e): more undefined references to `cmdarg_err' follow CMakeFiles/dumpcap.dir/dumpcap.c.o: In function `capture_loop_start': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x22b7): undefined reference to `ws_inet_pton4' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x2a87): undefined reference to `relinquish_special_privs_perm' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x2c82): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x2ca0): undefined reference to `cmdarg_err_cont' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x2cc8): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x2f62): undefined reference to `create_tempfile' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x310e): undefined reference to `get_os_version_info' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x3e9f): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x3fb1): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x3fc1): undefined reference to `cmdarg_err_cont' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4359): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4502): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4518): undefined reference to `cmdarg_err_cont' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x469e): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x46ae): undefined reference to `cmdarg_err_cont' CMakeFiles/dumpcap.dir/dumpcap.c.o: In function `capture_loop_dispatch': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4c6c): undefined reference to `cmdarg_err' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4c7c): undefined reference to `cmdarg_err_cont' CMakeFiles/dumpcap.dir/dumpcap.c.o: In function `do_file_switch_or_stop': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/dumpcap.c:(.text+0x4dd8): undefined reference to `get_os_version_info' CMakeFiles/dumpcap.dir/filter_files.c.o: In function `read_filter_list': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/filter_files.c:(.text+0x52): undefined reference to `get_persconffile_path' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/filter_files.c:(.text+0x45a): undefined reference to `get_persconffile_path' /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/filter_files.c:(.text+0x490): undefined reference to `get_datafile_path' CMakeFiles/dumpcap.dir/filter_files.c.o: In function `save_filter_list': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/filter_files.c:(.text+0x9c1): undefined reference to `get_persconffile_path' CMakeFiles/dumpcap.dir/ws_version_info.c.o: In function `get_runtime_version_info': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/ws_version_info.c:(.text+0x15c): undefined reference to `get_os_version_info' CMakeFiles/dumpcap.dir/ws_version_info.c.o: In function `show_version': /usr/obj/ports/wireshark-2.2.8/wireshark-2.2.8/ws_version_info.c:(.text+0x2c9): undefined reference to `get_copyright_info' cc: error: linker command failed with exit code 1 (use -v to see invocation)