|
From: | Gisle Vanem |
Subject: | Re: Problems with getopt |
Date: | Wed, 19 Apr 2017 18:54:41 +0200 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 |
Christian Egli wrote:
../tools/gnulib/.libs/libgnutools.a(getopt.o): In function `process_long_option': /home/eglic/src/liblouis/tools/gnulib/getopt.c:281: undefined reference to `flockfile' /home/eglic/src/liblouis/tools/gnulib/getopt.c:295: undefined reference to `funlockfile' collect2: error: ld returned 1 exit status Makefile:1098: recipe for target 'lou_allround.exe' failed I do not fully understand the source of gnulib/getopt.c but could it be that # ifndef _POSIX_THREAD_SAFE_FUNCTIONS # define flockfile(fp) /* nop */ # define funlockfile(fp) /* nop */ # endif is not invoked when cross-compiling with mingw?
Nothing to do with that. I got the same error. Since most modern MinGW uses win-pthreads, they define: #define _POSIX_THREAD_SAFE_FUNCTIONS 200112L in their <pthread_unistd.h> (line:150). So I think Gnulib should just say: # if !HAVE_DECL_FLOCKFILE # define flockfile(fp) /* nop */ # define funlockfile(fp) /* nop */ # endif instead. Similar to getdelim.c etc. -- --gv
[Prev in Thread] | Current Thread | [Next in Thread] |