troglobit / inadyn

In-a-Dyn is a dynamic DNS client with multiple SSL/TLS library support
https://troglobit.com/projects/inadyn/
GNU General Public License v2.0
968 stars 139 forks source link

[OpenBSD] ./configure error with unexpected disable-shared #242

Closed epsilon-0 closed 5 years ago

epsilon-0 commented 5 years ago

I am trying to compile the package from scratch in OpenBSD and am at the stage where I need to run ./autogen.sh

I am running the latest GIT branch right now.

I get an error saying that disable-shared is unexpected during this stage

The whole error is

``` checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking whether make supports the include directive... yes (GNU style) checking for gcc... no checking for cc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking whether cc understands -c and -o together... yes checking dependency style of cc... gcc3 checking how to run the C preprocessor... cc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether we are using the GNU C compiler... (cached) yes checking whether cc accepts -g... (cached) yes checking for cc option to accept ISO C89... (cached) none needed checking whether cc understands -c and -o together... (cached) yes checking dependency style of cc... (cached) gcc3 checking whether cc needs -traditional... no checking for ANSI C header files... (cached) yes checking for arpa/inet.h... yes checking for arpa/nameser.h... yes checking for netinet/in.h... yes checking for stdlib.h... (cached) yes checking for stdint.h... (cached) yes checking for string.h... (cached) yes checking for sys/ioctl.h... yes checking for sys/socket.h... yes checking for sys/types.h... (cached) yes checking for syslog.h... yes checking for unistd.h... (cached) yes checking for an ANSI C-conforming const... yes checking for inline... inline checking for uint32_t... yes checking for pid_t... yes checking vfork.h usability... no checking vfork.h presence... no checking for vfork.h... no checking for fork... yes checking for vfork... yes checking for working fork... yes checking for working vfork... (cached) yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/socket.h... (cached) yes checking types of arguments for select... int,fd_set *,struct timeval * checking for atexit... yes checking for memset... yes checking for poll... yes checking for socket... yes checking for strerror... yes checking for library containing dlopen... none required checking for pidfile in -lutil... yes checking for pidfile... yes checking for strlcpy... yes checking for strlcat... yes checking for strtonum... yes checking for utimensat... yes checking for ar... ar checking the archiver (ar) interface... ar ./configure[6209]: syntax error: `disable-shared' unexpected ```

I do have the latest versions of libconfuse installed. I am running OpenBSD 6.4

troglobit commented 5 years ago

What is your complete configure line? I just tried ./configure --disable-shared on OpenBSD 6.1 without any problems.

epsilon-0 commented 5 years ago

O.O I attached the error log, so I don't exactly know what the problem is there... If you click on details, it shows the log.

troglobit commented 5 years ago

The log doesn't include the actual command you wrote on the command line.

troglobit commented 5 years ago

Have you tried calling ./configure without any arguments?

epsilon-0 commented 5 years ago

I ran the command ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var

troglobit commented 5 years ago

Weird ... try re-running the ./configure script

epsilon-0 commented 5 years ago

Wait, I am running it with the --disable-shared parameter and see how it goes.

troglobit commented 5 years ago

autogen.sh is only for (re-)creating the configure script and the Makefile.in files.

troglobit commented 5 years ago

Why do you want to run with --disable-shared? Do you have a requirement to build a static binary?

epsilon-0 commented 5 years ago

OK, I ran with ./configure --disable-shared and it gave an error saying

configure: WARNING: unrecognized options: --disable-shared
troglobit commented 5 years ago

So ... don't use --disable-shared?

epsilon-0 commented 5 years ago

OK, I ran just the command ./configure and it gave the exact same error as the first post.

troglobit commented 5 years ago

Here's what I get on my install:

``` # uname -a OpenBSD beasdie.sparrow.net 6.1 GENERIC#19 amd64 # # ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking for style of include used by make... GNU checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking whether gcc understands -c and -o together... (cached) yes checking dependency style of gcc... (cached) gcc3 checking whether gcc needs -traditional... no checking for ANSI C header files... (cached) yes checking for arpa/inet.h... yes checking for arpa/nameser.h... yes checking for netinet/in.h... yes checking for stdlib.h... (cached) yes checking for stdint.h... (cached) yes checking for string.h... (cached) yes checking for sys/ioctl.h... yes checking for sys/socket.h... yes checking for sys/types.h... (cached) yes checking for syslog.h... yes checking for unistd.h... (cached) yes checking for an ANSI C-conforming const... yes checking for inline... inline checking for uint32_t... yes checking for pid_t... yes checking vfork.h usability... no checking vfork.h presence... no checking for vfork.h... no checking for fork... yes checking for vfork... yes checking for working fork... yes checking for working vfork... (cached) yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/socket.h... (cached) yes checking types of arguments for select... int,fd_set *,struct timeval * checking for atexit... yes checking for memset... yes checking for poll... yes checking for socket... yes checking for strerror... yes checking for library containing dlopen... none required checking for pidfile in -lutil... yes checking for pidfile... yes checking for strlcpy... yes checking for strlcat... yes checking for strtonum... yes checking for utimensat... yes checking for ar... ar checking the archiver (ar) interface... ar checking build system type... x86_64-unknown-openbsd6.1 checking host system type... x86_64-unknown-openbsd6.1 checking how to print strings... print -r checking for a sed that does not truncate output... /usr/bin/sed checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 196608 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... no checking how to convert x86_64-unknown-openbsd6.1 file names to x86_64-unknown-openbsd6.1 format... func_convert_file_noop checking how to convert x86_64-unknown-openbsd6.1 file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$ checking for dlltool... no checking how to associate runtime and link libraries... print -r -- checking for archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... openbsd6.1 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... no checking whether to build static libraries... yes checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for confuse... yes checking for cfg_init in -lconfuse... yes checking confuse.h usability... yes checking confuse.h presence... yes checking for confuse.h... yes checking for GnuTLS... yes checking for gnutls_init in -lgnutls... yes checking gnutls/gnutls.h usability... yes checking gnutls/gnutls.h presence... yes checking for gnutls/gnutls.h... yes checking gnutls/x509.h usability... yes checking gnutls/x509.h presence... yes checking for gnutls/x509.h... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating inadyn.service config.status: creating src/Makefile config.status: creating include/Makefile config.status: creating man/Makefile config.status: creating examples/Makefile config.status: creating include/config.h config.status: include/config.h is unchanged config.status: executing depfiles commands config.status: executing libtool commands # make clean all Making clean in src rm -rf .libs _libs rm -f inadyn rm -f *.o rm -f ../plugins/*.o test -z "" || rm -f rm -f *.lo Making clean in include rm -rf .libs _libs rm -f *.lo Making clean in man rm -rf .libs _libs rm -f *.lo Making clean in examples rm -rf .libs _libs rm -f *.lo rm -rf .libs _libs rm -f *.lo Making all in src CC inadyn-main.o CC inadyn-ddns.o CC inadyn-cache.o CC inadyn-error.o CC inadyn-conf.o CC inadyn-os.o CC inadyn-http.o CC inadyn-plugin.o CC inadyn-tcp.o CC inadyn-sha1.o CC inadyn-base64.o CC inadyn-makepath.o CC inadyn-md5.o CC inadyn-log.o CC inadyn-gnutls.o CC ../plugins/inadyn-common.o CC ../plugins/inadyn-changeip.o CC ../plugins/inadyn-cloudxns.o CC ../plugins/inadyn-ddnss.o CC ../plugins/inadyn-dhis.o CC ../plugins/inadyn-dnsexit.o CC ../plugins/inadyn-dtdns.o CC ../plugins/inadyn-duckdns.o CC ../plugins/inadyn-duiadns.o CC ../plugins/inadyn-dyndns.o CC ../plugins/inadyn-dynv6.o CC ../plugins/inadyn-dynv6-ipv4.o CC ../plugins/inadyn-easydns.o CC ../plugins/inadyn-freedns.o CC ../plugins/inadyn-freemyip.o CC ../plugins/inadyn-generic.o CC ../plugins/inadyn-giradns.o CC ../plugins/inadyn-sitelutions.o CC ../plugins/inadyn-tunnelbroker.o CC ../plugins/inadyn-tzo.o CC ../plugins/inadyn-zoneedit.o CC ../plugins/inadyn-zerigo.o CC ../plugins/inadyn-dnspod.o CCLD inadyn /usr/local/lib/libgnutls.so.44.1: warning: warning: strcat() is almost always misused, please use strlcat() ../plugins/inadyn-cloudxns.o: In function `request': ../plugins/cloudxns.c:127: warning: warning: sprintf() is often misused, please use snprintf() /usr/local/lib/libunistring.so.0.1: warning: warning: stpcpy() is dangerous; do not use it /usr/local/lib/libgmp.so.10.0: warning: warning: vsprintf() is often misused, please use vsnprintf() ../plugins/inadyn-dnspod.o: In function `request': ../plugins/dnspod.c:76: warning: warning: strcpy() is almost always misused, please use strlcpy() inadyn-ddns.o: In function `update_alias_table': /root/inadyn/src/ddns.c:634: warning: warning: rand() may return deterministic values, is that what you want? Making all in include make all-am Making all in man Making all in examples # ```

Essentially I cannot reproduce your problem. So, I'm not sure I can help you any further.

epsilon-0 commented 5 years ago

OK, give me a sec, I'll try to give the whole output in your syntax...

epsilon-0 commented 5 years ago

Here is the whole output

``` safety-house# uname -a OpenBSD safety-house.fios-router.home 6.4 GENERIC.MP#218 arm64 safety-house# ./autogen.sh autoreconf-2.69: Entering directory `.' autoreconf-2.69: configure.ac: not using Gettext autoreconf-2.69: running: aclocal --force --warnings=portability -I m4 autoreconf-2.69: configure.ac: tracing autoreconf-2.69: configure.ac: not using Libtool autoreconf-2.69: running: /usr/local/bin/autoconf-2.69 --force --warnings=portability autoreconf-2.69: running: /usr/local/bin/autoheader-2.69 --force --warnings=portability autoreconf-2.69: running: automake --add-missing --copy --force-missing --warnings=portability autoreconf-2.69: no config.status: cannot re-make autoreconf-2.69: Leaving directory `.' safety-house# ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking whether make supports the include directive... yes (GNU style) checking for gcc... no checking for cc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking whether cc understands -c and -o together... yes checking dependency style of cc... gcc3 checking how to run the C preprocessor... cc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether we are using the GNU C compiler... (cached) yes checking whether cc accepts -g... (cached) yes checking for cc option to accept ISO C89... (cached) none needed checking whether cc understands -c and -o together... (cached) yes checking dependency style of cc... (cached) gcc3 checking whether cc needs -traditional... no checking for ANSI C header files... (cached) yes checking for arpa/inet.h... yes checking for arpa/nameser.h... yes checking for netinet/in.h... yes checking for stdlib.h... (cached) yes checking for stdint.h... (cached) yes checking for string.h... (cached) yes checking for sys/ioctl.h... yes checking for sys/socket.h... yes checking for sys/types.h... (cached) yes checking for syslog.h... yes checking for unistd.h... (cached) yes checking for an ANSI C-conforming const... yes checking for inline... inline checking for uint32_t... yes checking for pid_t... yes checking vfork.h usability... no checking vfork.h presence... no checking for vfork.h... no checking for fork... yes checking for vfork... yes checking for working fork... yes checking for working vfork... (cached) yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/socket.h... (cached) yes checking types of arguments for select... int,fd_set *,struct timeval * checking for atexit... yes checking for memset... yes checking for poll... yes checking for socket... yes checking for strerror... yes checking for library containing dlopen... none required checking for pidfile in -lutil... yes checking for pidfile... yes checking for strlcpy... yes checking for strlcat... yes checking for strtonum... yes checking for utimensat... yes checking for ar... ar checking the archiver (ar) interface... ar ./configure[6209]: syntax error: `disable-shared' unexpected ```
troglobit commented 5 years ago

I really have no idea what's going on here. Sorry I cannot be of any more help.

epsilon-0 commented 5 years ago

OK, so I was able to manually change the configure file and removed the lines containing LT_INIT(disable-shared static)

This allowed me to finish configuring and making the files.

Duncaen commented 5 years ago

OpenBSDs libtool replacement doesn't come with libtool.m4 for autoconf afaik, I think the difference is having the GNU libtool package/port installed.

troglobit commented 5 years ago

Ah, of course, that would explain a lot. Thanks @duncaen!

epsilon-0 commented 5 years ago

Can anyone tell me if there is an easy fix for this?

troglobit commented 5 years ago

I did this a couple of years ago, dunno if it still resolves to GNU libtool, but maybe worth a shot

http://troglobit.com/2017/06/06/install-git-in-openbsd/

epsilon-0 commented 5 years ago

I actually have git installed, but the libtool installation fixed it for me!

Thanks a lot.

troglobit commented 5 years ago

@epsilon-0 OK, good to hear :)