|
From: | Kai Habel |
Subject: | gnulib problem with getcwd when compiling octave |
Date: | Thu, 17 Nov 2011 16:53:46 +0100 |
User-agent: | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111105 Thunderbird/8.0 |
I have reported the problem described below to the
octave-maintainers list today. Is this a gnulib problem? It was
confirmed for MSVC as well. http://octave.1599824.n4.nabble.com/MinGW-problem-with-libgnu-td4080214.html -------------------------------- I try to buid a very recent octave tip on mingw (32bit) Today, I have updated gnulib as well ran into the following build problem: I have used the following commands: $ ./autogen.sh > LOG.conf 2>&1;./configure LDFLAGS="-L/usr/local/octmgw32/lib" CPPFLAGS=-I/usr/local/octmgw32/include --disable-docs lt_cv_deplibs_check_metho d='pass_all' GHOSTSCRIPT=gswin32.exe >> LOG.conf 2>&1;make > LOG 2>&1 after a while I got: libtool: link: rm -fr .libs/libcruft.dll.a .libs/libcruft.la.lnkscript libtool: link: g++ -shared -nostdlib c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../.. /../dllcrt2.o c:/mingw/bin/../lib/gcc/mingw32/4.5.2/crtbegin.o .libs\\libcruft.l a.lnkscript -Wl,--whole-archive ./.libs/libranlib.a ../libgnu/.libs/libgnu.a -Wl ,--no-whole-archive -L/usr/local/octmgw32/lib -luser32 -lkernel32 -luser32 -lke rnel32 -llapack -lblas -LC:/MinGW/msys/1.0/local/octmgw32/lib -Lc:/mingw/bin/../ lib/gcc/mingw32/4.5.2 -Lc:/mingw/bin/../lib/gcc -Lc:/mingw/bin/../lib/gcc/mingw3 2/4.5.2/../../../../mingw32/lib -Lc:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../.. -L/mingw/lib /mingw/lib/gcc/mingw32/4.5.2/libgfortran.dll.a -L/projetos/gcc/bld /452/build/mingw32/winsup/mingw -L/projetos/gcc/bld/452/build/mingw32/winsup/w32 api/lib -lmingw32 -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 - lshell32 -luser32 -lkernel32 -luser32 -lkernel32 -liberty -lpthread -luser32 -lk ernel32 -lgdi32 -lws2_32 -luser32 -lkernel32 /mingw/lib/gcc/mingw32/4.5.2/libstd c++.dll.a -L/projetos/gcc/bld/452/build/mingw32/libstdc++-v3/src -L/projetos/gcc /bld/452/build/mingw32/libstdc++-v3/src/.libs -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc_s - lgcc -lmoldname -lmingwex -lmsvcrt c:/mingw/bin/../lib/gcc/mingw32/4.5.2/crtend. o -O2 -mieee-fp -O2 -O2 -o .libs/libcruft-0.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libcruft.dll.a Creating library file: .libs/libcruft.dll.a../libgnu/.libs/libgnu.a(getcwd.o): I n function `rpl_getcwd': C:\MinGW\msys\1.0\home\kai\hg-octave\octave\libgnu/getcwd.c:248: undefined refer ence to `fdopendir' C:\MinGW\msys\1.0\home\kai\hg-octave\octave\libgnu/getcwd.c:302: undefined refer ence to `fstatat ' collect2: ld returned 1 exit status make[2]: *** [libcruft.la] Error 1 make[2]: Leaving directory `/home/kai/hg-octave/octave/libcruft' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/kai/hg-octave/octave' make: *** [all] Error 2 If I do nm libgnu/.libs/libgnu.a | grep 'fdopendir' U _fdopendir $ nm libgnu/.libs/libgnu.a | grep 'fstatat' fstatat.o: 00000000 T _rpl_fstatat U _fstatat it seems that fdopendir is not there. If look at the compile log for libgnu, I see fdopendir is not linked in but fstatat is. libtool: link: ar cru .libs/libgnu.a .libs/c-ctype.o .libs/c-strcasecmp.o .libs/ c-strncasecmp.o .libs/cloexec.o .libs/md5.o .libs/dirname-lgpl.o .libs/basename- lgpl.o .libs/stripslash.o .libs/exitfail.o .libs/fd-hook.o .libs/filemode.o .lib s/filenamecat-lgpl.o .libs/freading.o .libs/localcharset.o .libs/malloca.o .libs /nproc.o .libs/openat-die.o .libs/progname.o .libs/save-cwd.o .libs/sockets.o .l ibs/strftime.o .libs/strnlen1.o .libs/tempname.o .libs/tmpdir.o .libs/dup-safer. o .libs/fd-safer.o .libs/pipe-safer.o .libs/asnprintf.o .libs/canonicalize-lgpl. o .libs/chdir-long.o .libs/close.o .libs/closedir.o .libs/dirfd.o .libs/dup2.o . libs/error.o .libs/fchdir.o .libs/fclose.o .libs/fcntl.o .libs/fflush.o .libs/fn match.o .libs/fopen.o .libs/fpurge.o .libs/fseek.o .libs/fseeko.o .libs/fstat.o .libs/fstatat.o .libs/ftell.o .libs/ftello.o .libs/getcwd.o .libs/getcwd-lgpl.o .libs/getdtablesize.o .libs/gethostname.o .libs/getlogin_r.o .libs/getopt.o .lib s/getopt1.o .libs/glob.o .libs/isnanl.o .libs/link.o .libs/lseek.o .libs/malloc. o .libs/mbrtowc.o .libs/mbsinit.o .libs/mbsrtowcs.o .libs/mbsrtowcs-state.o .lib s/mempcpy.o .libs/memrchr.o .libs/mkdir.o .libs/mkfifo.o .libs/mkstemp.o .libs/m ktime.o .libs/nanosleep.o .libs/open.o .libs/openat.o .libs/openat-proc.o .libs/ opendir.o .libs/printf-args.o .libs/printf-parse.o .libs/readlink.o .libs/reallo c.o .libs/rename.o .libs/rmdir.o .libs/select.o .libs/sigaction.o .libs/sigprocm ask.o .libs/sleep.o .libs/stat.o .libs/strdup.o .libs/strerror.o .libs/strerror- override.o .libs/strptime.o .libs/symlink.o .libs/time_r.o .libs/times.o .libs/t mpfile.o .libs/unlink.o .libs/vasnprintf.o .libs/vsnprintf.o libtool: link: ranlib .libs/libgnu.a But on the other hand I have: $ ls -l libgnu/.libs/fdopendir.o -rw-r--r-- 1 kai Administratoren 5923 Nov 16 20:50 libgnu/.libs/fdopendir.o address@hidden ~/hg-octave/octave $ ls -l libgnu/.libs/fstatat.o -rw-r--r-- 1 kai Administratoren 5413 Nov 17 13:16 libgnu/.libs/fstatat.o |
[Prev in Thread] | Current Thread | [Next in Thread] |