OSDev.org

The Place to Start for Operating System Developers
It is currently Sun Apr 28, 2024 12:59 pm

All times are UTC - 6 hours




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: GNU tar configure script thinks my OS is Windows
PostPosted: Wed Apr 29, 2015 2:56 pm 
Offline
Member
Member

Joined: Sat Oct 16, 2010 3:38 pm
Posts: 587
I downloaded the source code for GNU tar 1.28 and tried cross-compiling it to my OS (with a custom C library).

I configured as follows:

Code:
./configure --host=x86_64-glidix --prefix=/usr


The configure script succeeded, I ran 'make', it generated header files that the system already has (like <time.h> etc) for some reason, and then failed to compile due to attempting to include <windows.h>.

Here's the output after "configure" and "make":

Code:
mariusz@mariusz-Satellite-A660:~/Madd/tar-1.28$ ./configure --host=x86_64-glidix --prefix=/usr
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for x86_64-glidix-strip... x86_64-glidix-strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '1000' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking for style of include used by make... GNU
checking for x86_64-glidix-gcc... x86_64-glidix-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... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether x86_64-glidix-gcc accepts -g... yes
checking for x86_64-glidix-gcc option to accept ISO C89... none needed
checking whether x86_64-glidix-gcc understands -c and -o together... yes
checking dependency style of x86_64-glidix-gcc... gcc3
checking for x86_64-glidix-gcc option to accept ISO C99... unsupported
checking for x86_64-glidix-gcc option to accept ISO C89... (cached) none needed
checking for x86_64-glidix-gcc option to accept ISO Standard C... (cached) none needed
checking for x86_64-glidix-ranlib... x86_64-glidix-ranlib
checking for bison... bison -y
checking how to run the C preprocessor... x86_64-glidix-gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for Minix Amsterdam compiler... no
checking for x86_64-glidix-ar... x86_64-glidix-ar
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... no
checking for strings.h... no
checking for inttypes.h... no
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 _XOPEN_SOURCE should be defined... no
checking for _LARGEFILE_SOURCE value needed for large files... unknown
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for x86_64-glidix-ar... (cached) x86_64-glidix-ar
checking for special C compiler options needed for large files... (cached) no
checking for _FILE_OFFSET_BITS value needed for large files... (cached) no
checking for inline... inline
checking for fcntl.h... yes
checking for linux/fd.h... no
checking for memory.h... (cached) no
checking for net/errno.h... no
checking for sgtty.h... no
checking for string.h... (cached) yes
checking for sys/param.h... no
checking for sys/device.h... no
checking for sys/gentape.h... no
checking for sys/inet.h... no
checking for sys/io/trioctl.h... no
checking for sys/mtio.h... no
checking for sys/time.h... no
checking for sys/tprintf.h... no
checking for sys/tape.h... no
checking for unistd.h... (cached) yes
checking for locale.h... yes
checking for features.h... no
checking for linewrap.h... no
checking for sys/socket.h... no
checking for dirent.h... yes
checking for wctype.h... no
checking for stdio_ext.h... no
checking for sys/stat.h... (cached) yes
checking for getopt.h... no
checking for wchar.h... no
checking for stdint.h... (cached) yes
checking for inttypes.h... (cached) no
checking for langinfo.h... no
checking for xlocale.h... no
checking for sys/mman.h... yes
checking for priv.h... no
checking for malloc.h... no
checking for selinux/selinux.h... no
checking for strings.h... (cached) no
checking for sysexits.h... no
checking for utime.h... no
checking for netdb.h... no
checking for sys/wait.h... yes
checking for pwd.h... yes
checking for grp.h... yes
checking for sys/buf.h... no
checking whether sys/types.h defines makedev... no
checking sys/mkdev.h usability... no
checking sys/mkdev.h presence... no
checking for sys/mkdev.h... no
checking sys/sysmacros.h usability... no
checking sys/sysmacros.h presence... no
checking for sys/sysmacros.h... no
checking for st_fstype string in struct stat... no
checking sys/acl.h usability... no
checking sys/acl.h presence... no
checking for sys/acl.h... no
checking for mode_t... yes
checking for pid_t... yes
checking for off_t... yes
checking for uid_t in sys/types.h... yes
checking for major_t... no
checking for minor_t... no
checking for dev_t... yes
checking for ino_t... yes
checking for ssize_t... yes
checking for size_t... yes
checking for working alloca.h... no
checking for alloca... no
checking whether `alloca.c' needs Cray hooks... no
checking stack direction for C alloca... 0
checking for C/C++ restrict keyword... __restrict
checking whether clearerr_unlocked is declared... no
checking whether feof_unlocked is declared... no
checking whether ferror_unlocked is declared... no
checking whether fflush_unlocked is declared... no
checking whether fgets_unlocked is declared... no
checking whether fputc_unlocked is declared... no
checking whether fputs_unlocked is declared... no
checking whether fread_unlocked is declared... no
checking whether fwrite_unlocked is declared... no
checking whether getc_unlocked is declared... no
checking whether getchar_unlocked is declared... no
checking whether putc_unlocked is declared... no
checking whether putchar_unlocked is declared... no
checking for flockfile... no
checking for funlockfile... no
checking for pathconf... no
checking for btowc... no
checking for canonicalize_file_name... no
checking for getcwd... no
checking for readlink... no
checking for realpath... no
checking for readlinkat... no
checking for chown... no
checking for fchown... no
checking for _set_invalid_parameter_handler... no
checking for fchdir... no
checking for fdopendir... no
checking for faccessat... no
checking for fchmodat... no
checking for lchmod... no
checking for fcntl... no
checking for symlink... no
checking for mempcpy... no
checking for isblank... no
checking for iswctype... no
checking for mbsrtowcs... no
checking for wmemchr... no
checking for wmemcpy... no
checking for wmempcpy... no
checking for fstatat... no
checking for futimens... no
checking for getdelim... no
checking for getdtablesize... no
checking for gettimeofday... no
checking for nanotime... no
checking for iswcntrl... no
checking for iswblank... no
checking for link... no
checking for openat... no
checking for linkat... no
checking for lstat... no
checking for mbsinit... no
checking for mbrtowc... no
checking for mprotect... no
checking for mkdirat... no
checking for mkfifo... no
checking for mkfifoat... no
checking for mknodat... no
checking for mknod... no
checking for nl_langinfo... no
checking for posix_openpt... no
checking for ptsname_r... no
checking for fchmod... no
checking for renameat... no
checking for secure_getenv... no
checking for setenv... no
checking for sleep... no
checking for snprintf... no
checking for strdup... no
checking for tzset... no
checking for strndup... no
checking for strtoimax... no
checking for strtoumax... no
checking for symlinkat... no
checking for localtime_r... no
checking for pipe... no
checking for unlinkat... no
checking for futimes... no
checking for futimesat... no
checking for utimensat... no
checking for lutimes... no
checking for vasnprintf... no
checking for wcrtomb... no
checking for wcwidth... no
checking for setlocale... no
checking for fsync... no
checking for grantpt... no
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-pc-glidix
checking for d_ino member in directory struct... guessing no
checking for long file names... yes
checking whether <wchar.h> uses 'inline' correctly... yes
checking for nl_langinfo and CODESET... no
checking for a traditional french locale...
checking whether // is distinct from /... unknown, assuming no
checking whether realpath works... guessing no
checking for unistd.h... (cached) yes
checking for working chown... no
checking whether chown dereferences symlinks... yes
checking whether the preprocessor supports include_next... yes
checking whether system header files limit the line length... no
checking if environ is properly declared... no
checking for complete errno.h... no
checking for EMULTIHOP value... yes
checking for ENOLINK value... yes
checking for EOVERFLOW value... yes
checking whether strerror_r is declared... yes
checking for strerror_r... no
checking whether strerror_r returns char *... no
checking type of array argument to getgroups... int
checking whether fchdir is declared... no
checking for working fcntl.h... cross-compiling
checking for mbstate_t... no
checking whether stdin defaults to large file offsets... no
checking whether fseeko is declared... no
checking for fseeko... no
checking whether stat file-mode macros are broken... no
checking for nlink_t... yes
checking whether fchmodat is declared without a macro... no
checking whether fstat is declared without a macro... yes
checking whether fstatat is declared without a macro... no
checking whether futimens is declared without a macro... no
checking whether lchmod is declared without a macro... no
checking whether lstat is declared without a macro... yes
checking whether mkdirat is declared without a macro... no
checking whether mkfifo is declared without a macro... no
checking whether mkfifoat is declared without a macro... no
checking whether mknod is declared without a macro... no
checking whether mknodat is declared without a macro... no
checking whether stat is declared without a macro... yes
checking whether utimensat is declared without a macro... no
checking whether lstat correctly handles trailing slash... guessing no
checking whether getcwd (NULL, 0) allocates memory for result... guessing no
checking for getcwd with POSIX signature... yes
checking whether getcwd is declared... yes
checking whether getdelim is declared... no
checking whether getline is declared... no
checking for getopt.h... (cached) no
checking whether getenv is declared... yes
checking winsock2.h usability... no
checking winsock2.h presence... no
checking for winsock2.h... no
checking for struct timeval... no
checking whether gettimeofday is declared without a macro... no
checking for unsigned long long int... no
checking for long long int... no
checking whether stdint.h conforms to C99... no
checking sys/inttypes.h usability... no
checking sys/inttypes.h presence... no
checking for sys/inttypes.h... no
checking sys/bitypes.h usability... no
checking sys/bitypes.h presence... no
checking for sys/bitypes.h... no
checking for bit size of ptrdiff_t... 64
checking for bit size of size_t... 64
checking for bit size of sig_atomic_t... unknown
checking for bit size of wchar_t... 32
checking for bit size of wint_t... unknown
checking whether sig_atomic_t is signed... no
checking whether wchar_t is signed... yes
checking whether wint_t is signed... no
checking for ptrdiff_t integer literal suffix... l
checking for size_t integer literal suffix... ul
checking for sig_atomic_t integer literal suffix... no
checking for wchar_t integer literal suffix...
checking for wint_t integer literal suffix... no
checking whether imaxabs is declared without a macro... no
checking whether imaxdiv is declared without a macro... no
checking whether strtoimax is declared without a macro... no
checking whether strtoumax is declared without a macro... no
checking for inttypes.h... (cached) no
checking for wint_t... no
checking for wctype_t... no
checking for wctrans_t... no
checking whether wctype is declared without a macro... no
checking whether iswctype is declared without a macro... no
checking whether wctrans is declared without a macro... no
checking whether towctrans is declared without a macro... no
checking whether we are using the GNU C Library >= 2.1 or uClibc... no
checking for wchar_t... yes
checking whether NULL can be used in arbitrary expressions... yes
checking whether malloc, realloc, calloc are POSIX compliant... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... no
checking for a traditional japanese locale...
checking for a transitional chinese locale... none
checking for a french Unicode locale...
checking for mmap... no
checking whether memchr works... guessing no
checking whether memrchr is declared... no
checking whether alarm is declared... no
checking for promoted mode_t type... mode_t
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for compound literals... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for struct tm.tm_gmtoff... no
checking for library containing setfilecon... no
checking whether setenv is declared... yes
checking search.h usability... no
checking search.h presence... no
checking for search.h... no
checking for tsearch... no
checking for sigset_t... yes
checking whether snprintf returns a byte count as in C99... guessing no
checking whether snprintf is declared... yes
checking whether strdup is declared... yes
checking whether strerror(0) succeeds... guessing no
checking whether ffsl is declared without a macro... no
checking whether ffsll is declared without a macro... no
checking whether memmem is declared without a macro... no
checking whether mempcpy is declared without a macro... no
checking whether memrchr is declared without a macro... no
checking whether rawmemchr is declared without a macro... no
checking whether stpcpy is declared without a macro... no
checking whether stpncpy is declared without a macro... no
checking whether strchrnul is declared without a macro... no
checking whether strdup is declared without a macro... yes
checking whether strncat is declared without a macro... yes
checking whether strndup is declared without a macro... yes
checking whether strnlen is declared without a macro... yes
checking whether strpbrk is declared without a macro... yes
checking whether strsep is declared without a macro... no
checking whether strcasestr is declared without a macro... no
checking whether strtok_r is declared without a macro... no
checking whether strerror_r is declared without a macro... yes
checking whether strsignal is declared without a macro... no
checking whether strverscmp is declared without a macro... no
checking whether ffs is declared without a macro... no
checking whether strcasecmp is declared without a macro... no
checking whether strncasecmp is declared without a macro... no
checking whether strndup is declared... (cached) yes
checking whether strnlen is declared... (cached) yes
checking whether strtoimax is declared... no
checking whether strtoumax is declared... no
checking for struct timespec in <time.h>... yes
checking whether ttyname_r is declared... no
checking whether unsetenv is declared... no
checking whether the utimes function works... no
checking for struct utimbuf... no
checking for inttypes.h... no
checking for stdint.h... no
checking for intmax_t... no
checking where to find the exponent in a 'double'... word 1 bit 20
checking for snprintf... (cached) no
checking for strnlen... no
checking for wcslen... no
checking for wcsnlen... no
checking for mbrtowc... (cached) no
checking for wcrtomb... (cached) no
checking whether _snprintf is declared... no
checking whether vsnprintf is declared... yes
checking whether program_invocation_name is declared... no
checking whether program_invocation_short_name is declared... no
checking whether program_invocation_name is defined... no
checking whether program_invocation_short_name is defined... no
checking whether this system has an arbitrary file name length limit... no
checking for library containing clock_gettime... no
checking for clock_gettime... no
checking for clock_settime... no
checking for winsock2.h... (cached) no
checking for closedir... no
checking for d_ino member in directory struct... (cached) guessing no
checking whether alphasort is declared without a macro... no
checking whether closedir is declared without a macro... yes
checking whether dirfd is declared without a macro... no
checking whether fdopendir is declared without a macro... no
checking whether opendir is declared without a macro... yes
checking whether readdir is declared without a macro... yes
checking whether rewinddir is declared without a macro... no
checking whether scandir is declared without a macro... no
checking for dirfd... no
checking whether dirfd is declared... no
checking whether dirfd is a macro... no
checking how to get the file descriptor associated with an open DIR*... no_such_member
checking whether // is distinct from /... (cached) unknown, assuming no
checking whether dup2 works... guessing yes
checking for error_at_line... no
checking for euidaccess... no
checking libgen.h usability... no
checking libgen.h presence... no
checking for libgen.h... no
checking for getgroups... no
checking for getgroups in -lbsd... no
checking for library containing eaccess... no
checking for eaccess... no
checking for access... no
checking whether open can visit directories... guessing no
checking for fchownat... no
checking whether fcntl is declared without a macro... no
checking whether openat is declared without a macro... no
checking whether fdopendir is declared... no
checking for struct stat.st_blocks... yes
checking whether conversion from 'int' to 'long double' works... guessing yes
checking for working GNU fnmatch... guessing no
checking whether isblank is declared... yes
checking whether isblank is declared... (cached) yes
checking for __fpending... no
checking how to determine the number of pending output bytes on a stream... 1
checking for fseeko... (cached) no
checking for _fseeki64... no
checking whether getcwd handles long file names properly... no
checking for flockfile... (cached) no
checking for funlockfile... (cached) no
checking whether getc_unlocked is declared... (cached) no
checking for getgroups... (cached) no
checking for getgroups in -lbsd... (cached) no
checking for getline... no
checking for getpagesize... no
checking OS.h usability... no
checking OS.h presence... no
checking for OS.h... no
checking for sys/param.h... (cached) no
checking whether getpagesize is declared... no
checking sys/timeb.h usability... no
checking sys/timeb.h presence... no
checking for sys/timeb.h... no
checking for _ftime... no
checking for group_member... no
checking whether INT32_MAX < INTMAX_MAX... no
checking whether INT64_MAX == LONG_MAX... no
checking whether UINT32_MAX < UINTMAX_MAX... no
checking whether UINT64_MAX == ULONG_MAX... no
checking whether iswblank is declared... no
checking whether nl_langinfo is declared without a macro... no
checking for lchown... no
checking whether locale.h conforms to POSIX:2001... no
checking whether struct lconv is properly defined... yes
checking whether setlocale is declared without a macro... yes
checking whether duplocale is declared without a macro... yes
checking whether lseek detects pipes... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... (cached) no
checking whether mbrtowc is declared... no
checking whether mbsinit is declared... no
checking whether mbsrtowcs is declared... no
checking bp-sym.h usability... no
checking bp-sym.h presence... no
checking for bp-sym.h... no
checking for mempcpy... (cached) no
checking for memrchr... no
checking whether mkdir handles trailing slash... guessing no
checking whether mkdir handles trailing dot... guessing no
checking for mkdtemp... no
checking for working mktime... no
checking for obstacks... no
checking whether open recognizes a trailing slash... guessing yes
checking for opendir... no
checking for struct tm.tm_zone... no
checking whether tzname is declared... yes
checking for tzname... no
checking for getppriv... no
checking whether program_invocation_name is declared... (cached) no
checking whether program_invocation_short_name is declared... (cached) no
checking for ptsname... no
checking whether isatty sets errno when it fails... guessing yes
checking for sys/acl.h... (cached) no
configure: WARNING: libacl development library was not found or not usable.
configure: WARNING: GNU tar will be built without ACL support.
checking for raise... no
checking for rawmemchr... no
checking for readdir... no
checking for working re_compile_pattern... no
checking libintl.h usability... no
checking libintl.h presence... no
checking for libintl.h... no
checking whether isblank is declared... (cached) yes
checking whether rename honors trailing slash on destination... guessing no
checking whether rename honors trailing slash on source... guessing no
checking whether rename manages hard links correctly... yes
checking whether rename manages existing destinations correctly... guessing no
checking for rewinddir... no
checking whether rmdir works... guessing no
checking for rpmatch... no
checking for nl_langinfo and YESEXPR... no
checking for __secure_getenv... no
checking for issetugid... no
checking selinux/flask.h usability... no
checking selinux/flask.h presence... no
checking for selinux/flask.h... no
checking for volatile sig_atomic_t... no
checking for sighandler_t... no
checking whether pthread_sigmask is declared without a macro... no
checking whether sigaction is declared without a macro... yes
checking whether sigaddset is declared without a macro... no
checking whether sigdelset is declared without a macro... no
checking whether sigemptyset is declared without a macro... no
checking whether sigfillset is declared without a macro... no
checking whether sigismember is declared without a macro... no
checking whether sigpending is declared without a macro... no
checking whether sigprocmask is declared without a macro... no
checking for stdint.h... (cached) yes
checking for SIZE_MAX... (((1UL << 63) - 1) * 2 + 1)
checking whether sleep is declared... no
checking for snprintf... (cached) no
checking for ssize_t... (cached) yes
checking whether stat handles trailing slashes on directories... guessing yes
checking whether stat handles trailing slashes on files... guessing no
checking for struct stat.st_atim.tv_nsec... no
checking for struct stat.st_atimespec.tv_nsec... no
checking for struct stat.st_atimensec... no
checking for struct stat.st_atim.st__tim.tv_nsec... no
checking for struct stat.st_birthtimespec.tv_nsec... no
checking for struct stat.st_birthtimensec... no
checking for struct stat.st_birthtim.tv_nsec... no
checking for working stdalign.h... yes
checking for va_copy... yes
checking whether NULL can be used in arbitrary expressions... (cached) yes
checking whether dprintf is declared without a macro... no
checking whether fpurge is declared without a macro... no
checking whether fseeko is declared without a macro... no
checking whether ftello is declared without a macro... no
checking whether getdelim is declared without a macro... no
checking whether getline is declared without a macro... no
checking whether gets is declared without a macro... no
checking whether pclose is declared without a macro... no
checking whether popen is declared without a macro... no
checking whether renameat is declared without a macro... no
checking whether snprintf is declared without a macro... yes
checking whether tmpfile is declared without a macro... no
checking whether vdprintf is declared without a macro... no
checking whether vsnprintf is declared without a macro... yes
checking whether _Exit is declared without a macro... yes
checking whether atoll is declared without a macro... yes
checking whether canonicalize_file_name is declared without a macro... no
checking whether getloadavg is declared without a macro... no
checking whether getsubopt is declared without a macro... no
checking whether grantpt is declared without a macro... no
checking whether initstate is declared without a macro... no
checking whether initstate_r is declared without a macro... no
checking whether mkdtemp is declared without a macro... no
checking whether mkostemp is declared without a macro... no
checking whether mkostemps is declared without a macro... no
checking whether mkstemp is declared without a macro... no
checking whether mkstemps is declared without a macro... no
checking whether posix_openpt is declared without a macro... no
checking whether ptsname is declared without a macro... no
checking whether ptsname_r is declared without a macro... no
checking whether random is declared without a macro... no
checking whether random_r is declared without a macro... no
checking whether realpath is declared without a macro... yes
checking whether rpmatch is declared without a macro... no
checking whether secure_getenv is declared without a macro... no
checking whether setenv is declared without a macro... yes
checking whether setstate is declared without a macro... no
checking whether setstate_r is declared without a macro... no
checking whether srandom is declared without a macro... no
checking whether srandom_r is declared without a macro... no
checking whether strtod is declared without a macro... no
checking whether strtoll is declared without a macro... yes
checking whether strtoull is declared without a macro... yes
checking whether unlockpt is declared without a macro... no
checking whether unsetenv is declared without a macro... no
checking for stpcpy... no
checking for strcasecmp... no
checking for strncasecmp... no
checking whether strncasecmp is declared... no
checking for strchrnul... no
checking for winsock2.h... (cached) no
checking for working strnlen... yes
checking whether strtoll is declared... (cached) yes
checking for strtol... no
checking for strtoul... no
checking whether strtoull is declared... (cached) yes
checking for nlink_t... (cached) yes
checking whether fchmodat is declared without a macro... (cached) no
checking whether fstat is declared without a macro... (cached) yes
checking whether fstatat is declared without a macro... (cached) no
checking whether futimens is declared without a macro... (cached) no
checking whether lchmod is declared without a macro... (cached) no
checking whether lstat is declared without a macro... (cached) yes
checking whether mkdirat is declared without a macro... (cached) no
checking whether mkfifo is declared without a macro... (cached) no
checking whether mkfifoat is declared without a macro... (cached) no
checking whether mknod is declared without a macro... (cached) no
checking whether mknodat is declared without a macro... (cached) no
checking whether stat is declared without a macro... (cached) yes
checking whether utimensat is declared without a macro... (cached) no
checking whether localtime_r is declared... yes
checking for ttyname_r... no
checking for ttyname... no
checking whether chdir is declared without a macro... yes
checking whether chown is declared without a macro... yes
checking whether dup is declared without a macro... yes
checking whether dup2 is declared without a macro... yes
checking whether dup3 is declared without a macro... no
checking whether environ is declared without a macro... no
checking whether euidaccess is declared without a macro... no
checking whether faccessat is declared without a macro... no
checking whether fchdir is declared without a macro... no
checking whether fchownat is declared without a macro... no
checking whether fdatasync is declared without a macro... no
checking whether fsync is declared without a macro... yes
checking whether ftruncate is declared without a macro... yes
checking whether getcwd is declared without a macro... yes
checking whether getdomainname is declared without a macro... no
checking whether getdtablesize is declared without a macro... no
checking whether getgroups is declared without a macro... no
checking whether gethostname is declared without a macro... no
checking whether getlogin is declared without a macro... no
checking whether getlogin_r is declared without a macro... no
checking whether getpagesize is declared without a macro... no
checking whether getusershell is declared without a macro... no
checking whether setusershell is declared without a macro... no
checking whether endusershell is declared without a macro... no
checking whether group_member is declared without a macro... no
checking whether isatty is declared without a macro... no
checking whether lchown is declared without a macro... no
checking whether link is declared without a macro... yes
checking whether linkat is declared without a macro... no
checking whether lseek is declared without a macro... yes
checking whether pipe is declared without a macro... yes
checking whether pipe2 is declared without a macro... no
checking whether pread is declared without a macro... no
checking whether pwrite is declared without a macro... no
checking whether readlink is declared without a macro... yes
checking whether readlinkat is declared without a macro... no
checking whether rmdir is declared without a macro... no
checking whether sethostname is declared without a macro... no
checking whether sleep is declared without a macro... no
checking whether symlink is declared without a macro... yes
checking whether symlinkat is declared without a macro... no
checking whether ttyname_r is declared without a macro... no
checking whether unlink is declared without a macro... yes
checking whether unlinkat is declared without a macro... no
checking whether usleep is declared without a macro... no
checking whether unlink honors trailing slashes... guessing no
checking whether unlink of a parent directory fails as it should... guessing yes
checking for unlockpt... no
checking for revoke... no
checking for unsetenv... no
checking for ptrdiff_t... yes
checking for vasprintf... no
checking for vsnprintf... no
checking whether btowc is declared without a macro... no
checking whether wctob is declared without a macro... no
checking whether mbsinit is declared without a macro... no
checking whether mbrtowc is declared without a macro... no
checking whether mbrlen is declared without a macro... no
checking whether mbsrtowcs is declared without a macro... no
checking whether mbsnrtowcs is declared without a macro... no
checking whether wcrtomb is declared without a macro... no
checking whether wcsrtombs is declared without a macro... no
checking whether wcsnrtombs is declared without a macro... no
checking whether wcwidth is declared without a macro... no
checking whether wmemchr is declared without a macro... no
checking whether wmemcmp is declared without a macro... no
checking whether wmemcpy is declared without a macro... no
checking whether wmemmove is declared without a macro... no
checking whether wmemset is declared without a macro... no
checking whether wcslen is declared without a macro... no
checking whether wcsnlen is declared without a macro... no
checking whether wcscpy is declared without a macro... no
checking whether wcpcpy is declared without a macro... no
checking whether wcsncpy is declared without a macro... no
checking whether wcpncpy is declared without a macro... no
checking whether wcscat is declared without a macro... no
checking whether wcsncat is declared without a macro... no
checking whether wcscmp is declared without a macro... no
checking whether wcsncmp is declared without a macro... no
checking whether wcscasecmp is declared without a macro... no
checking whether wcsncasecmp is declared without a macro... no
checking whether wcscoll is declared without a macro... no
checking whether wcsxfrm is declared without a macro... no
checking whether wcsdup is declared without a macro... no
checking whether wcschr is declared without a macro... no
checking whether wcsrchr is declared without a macro... no
checking whether wcscspn is declared without a macro... no
checking whether wcsspn is declared without a macro... no
checking whether wcspbrk is declared without a macro... no
checking whether wcsstr is declared without a macro... no
checking whether wcstok is declared without a macro... no
checking whether wcswidth is declared without a macro... no
checking whether wcrtomb is declared... no
checking for wctype_t... (cached) no
checking for wctrans_t... (cached) no
checking whether wctype is declared without a macro... (cached) no
checking whether iswctype is declared without a macro... (cached) no
checking whether wctrans is declared without a macro... (cached) no
checking whether towctrans is declared without a macro... (cached) no
checking whether wcwidth is declared... no
checking for stdint.h... (cached) yes
checking whether time.h and sys/time.h may both be included... no
checking for struct stat.st_blksize... yes
checking for library containing setsockopt... no
checking for library containing setsockopt... (cached) no
checking for library containing setsockopt... (cached) no
checking for sys/mtio.h... (cached) no
checking which ioctl field to test for reversed bytes... mt_type
checking whether to build rmt... yes
configure: WARNING: not building rmt, required header files are missing
checking for sys/buf.h... (cached) no
checking for struct stat.st_blksize... (cached) yes
checking for library containing gethostbyname... no
checking sys/xattr.h usability... no
checking sys/xattr.h presence... no
checking for sys/xattr.h... no
checking attr/xattr.h usability... no
checking attr/xattr.h presence... no
checking for attr/xattr.h... no
checking for fgetxattr in -lattr... no
checking whether getgrgid is declared... yes
checking whether getpwuid is declared... yes
checking whether time is declared... yes
checking for waitpid... no
checking for remote shell... /usr/bin/rsh
checking for default archive format... GNU
checking for default archive... -
checking for default blocking... 20
checking for default quoting style... escape
checking for ld used by x86_64-glidix-gcc... /usr/x86_64-glidix/bin/ld
checking if the linker (/usr/x86_64-glidix/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking for iconv... no, consider installing GNU libiconv
checking iconv.h usability... no
checking iconv.h presence... no
checking for iconv.h... no
checking for iconv_t... no
checking for a sed that does not truncate output... /bin/sed
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking for GNU gettext in libc... no
checking for iconv... (cached) no, consider installing GNU libiconv
checking for GNU gettext in libintl... no
checking whether to use NLS... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating tests/Makefile
config.status: creating tests/atlocal
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating gnu/Makefile
config.status: creating lib/Makefile
config.status: creating po/Makefile.in
config.status: creating scripts/Makefile
config.status: creating rmt/Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing tests/atconfig commands
mariusz@mariusz-Satellite-A660:~/Madd/tar-1.28$ make
make  all-recursive
make[1]: Wejście do katalogu `/home/mariusz/Madd/tar-1.28'
Making all in doc
make[2]: Wejście do katalogu `/home/mariusz/Madd/tar-1.28/doc'
make[2]: Nie ma nic do zrobienia w `all'.
make[2]: Opuszczenie katalogu `/home/mariusz/Madd/tar-1.28/doc'
Making all in gnu
make[2]: Wejście do katalogu `/home/mariusz/Madd/tar-1.28/gnu'
  GEN      alloca.h
  GEN      configmake.h
  GEN      c++defs.h
  GEN      arg-nonnull.h
  GEN      warn-on-use.h
  GEN      dirent.h
  GEN      errno.h
  GEN      fcntl.h
  GEN      fnmatch.h
  GEN      getopt.h
  GEN      inttypes.h
  GEN      langinfo.h
  GEN      locale.h
  GEN      unused-parameter.h
  GEN      selinux/selinux.h
  GEN      selinux/context.h
  GEN      signal.h
  GEN      stdint.h
  GEN      stdio.h
  GEN      stdlib.h
  GEN      string.h
  GEN      strings.h
  GEN      sys/stat.h
  GEN      sys/time.h
  GEN      sys/types.h
  GEN      sysexits.h
  GEN      time.h
  GEN      unistd.h
  GEN      unitypes.h
  GEN      uniwidth.h
  GEN      wchar.h
  GEN      wctype.h
make  all-recursive
make[3]: Wejście do katalogu `/home/mariusz/Madd/tar-1.28/gnu'
make[4]: Wejście do katalogu `/home/mariusz/Madd/tar-1.28/gnu'
  CC       copy-acl.o
  CC       set-acl.o
  CC       allocator.o
  CC       areadlink.o
  CC       areadlinkat.o
  CC       argmatch.o
  CC       argp-ba.o
  CC       argp-eexst.o
  CC       argp-fmtstream.o
  CC       argp-fs-xinl.o
  CC       argp-help.o
  CC       argp-parse.o
  CC       argp-pin.o
  CC       argp-pv.o
  CC       argp-pvh.o
  CC       argp-xinl.o
  CC       argp-version-etc.o
  CC       backupfile.o
  CC       bitrotate.o
  CC       c-ctype.o
  CC       c-strcasecmp.o
  CC       c-strncasecmp.o
  CC       careadlinkat.o
  CC       cloexec.o
  CC       close-stream.o
  CC       closeout.o
  CC       opendir-safer.o
  CC       dirname.o
  CC       basename.o
  CC       dirname-lgpl.o
  CC       basename-lgpl.o
  CC       stripslash.o
  CC       exclude.o
  CC       exitfail.o
  CC       chmodat.o
  CC       chownat.o
  CC       fd-hook.o
  CC       fdutimensat.o
  CC       filenamecat-lgpl.o
  CC       fprintftime.o
  CC       full-write.o
  CC       gettime.o
  CC       hash.o
  CC       human.o
  CC       imaxtostr.o
  CC       inttostr.o
  CC       offtostr.o
  CC       uinttostr.o
  CC       umaxtostr.o
  CC       localcharset.o
localcharset.c: In function 'get_charset_aliases':
localcharset.c:218:27: warning: incompatible implicit declaration of built-in function 'fscanf'
                       if (fscanf (fp, "%50s %50s", buf1, buf2) < 2)
                           ^
  CC       malloca.o
  CC       mbchar.o
  CC       mbscasecmp.o
  CC       mbuiter.o
  CC       modechange.o
  CC       openat-die.o
  CC       parse-datetime.o
  CC       priv-set.o
  CC       progname.o
  CC       acl-errno-valid.o
  CC       file-has-acl.o
  CC       qcopy-acl.o
  CC       qset-acl.o
  CC       quotearg.o
  CC       safe-read.o
  CC       safe-write.o
  CC       save-cwd.o
  CC       savedir.o
  CC       se-context.o
  CC       se-selinux.o
  CC       stat-time.o
  CC       statat.o
  CC       strftime.o
  CC       strnlen1.o
  CC       tempname.o
  CC       timespec.o
  CC       unistd.o
  CC       dup-safer.o
  CC       fd-safer.o
  CC       pipe-safer.o
  CC       uniwidth/width.o
  CC       unlinkdir.o
  CC       utimens.o
  CC       version-etc.o
  CC       version-etc-fsf.o
  CC       wctype-h.o
  CC       xmalloc.o
  CC       xalloc-die.o
  CC       xgetcwd.o
  CC       xsize.o
  CC       xstrndup.o
  CC       xstrtol.o
xstrtol.c: In function 'xstrtol':
xstrtol.c:24:19: warning: passing argument 2 of 'strtol' from incompatible pointer type
# define __strtol strtol
                   ^
xstrtol.c:113:9: note: in expansion of macro '__strtol'
   tmp = __strtol (s, p, strtol_base);
         ^
In file included from ./stdlib.h:30:0,
                 from ./getopt.h:56,
                 from xstrtol.h:24,
                 from xstrtol.c:33:
/glidix/usr/include/stdlib.h:53:8: note: expected 'const char **' but argument is of type 'char **'
long   strtol(const char *str, const char **str_end, int base);
        ^
  CC       xstrtoul.o
xstrtol.c: In function 'xstrtoul':
xstrtoul.c:3:18: warning: passing argument 2 of 'strtoul' from incompatible pointer type
#define __strtol strtoul
                  ^
xstrtol.c:113:9: note: in expansion of macro '__strtol'
   tmp = __strtol (s, p, strtol_base);
         ^
In file included from ./stdlib.h:30:0,
                 from ./getopt.h:56,
                 from xstrtol.h:24,
                 from xstrtol.c:33,
                 from xstrtoul.c:8:
/glidix/usr/include/stdlib.h:55:16: note: expected 'const char **' but argument is of type 'char **'
unsigned long  strtoul(const char *str, const char **str_end, int base);
                ^
  CC       xstrtol-error.o
  CC       xstrtoumax.o
  CC       xvasprintf.o
  CC       xasprintf.o
  CC       asnprintf.o
  CC       asprintf.o
  CC       at-func2.o
  CC       btowc.o
  CC       canonicalize-lgpl.o
  CC       chown.o
  CC       close.o
  CC       closedir.o
In file included from closedir.c:37:0:
dirent-private.h:23:21: fatal error: windows.h: No such file or directory
#include <windows.h>
                     ^
compilation terminated.
make[4]: *** [closedir.o] BÅ‚Ä…d 1
make[4]: Opuszczenie katalogu `/home/mariusz/Madd/tar-1.28/gnu'
make[3]: *** [all-recursive] BÅ‚Ä…d 1
make[3]: Opuszczenie katalogu `/home/mariusz/Madd/tar-1.28/gnu'
make[2]: *** [all] BÅ‚Ä…d 2
make[2]: Opuszczenie katalogu `/home/mariusz/Madd/tar-1.28/gnu'
make[1]: *** [all-recursive] BÅ‚Ä…d 1
make[1]: Opuszczenie katalogu `/home/mariusz/Madd/tar-1.28'
make: *** [all] BÅ‚Ä…d 2


Does anyone have any clue why this is happening?

There's nothing in my C library or compiler that would indicate or to be Windows (as far as I'm aware...)


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Wed Apr 29, 2015 3:25 pm 
Offline
Member
Member

Joined: Wed Mar 30, 2011 12:31 am
Posts: 676
A quick look at the source for the relevant files says you're missing closedir, without which tar is trying to build its own builtin that assumes you are Windows.

./tar/closedir.c has the following
Code:
#if HAVE_CLOSEDIR

/* Override closedir(), to keep track of the open file descriptors.
   Needed because there is a function dirfd().  */

#else

# include <stdlib.h>

# include "dirent-private.h"

#endif


That dirent-private.h, as seen in your error, tries to include <windows.h>

Having looked at your source on github, you apparently do have closedir, which means the configure script is having trouble finding things in your C library - you should see what it's trying to run to detect things and figure out why it's failing.

Some questions to ask:
- Have you built other packages like tar before?
- Do you require extra arguments to CC to link against your C library, or does your toolchain know to do that automatically?

tl;dr: The configure script doesn't think your windows, it just can't find a bunch of standard library functions, which causes some other stuff that it builds to think your windows.

_________________
toaruos on github | toaruos.org | gitlab | twitter | bim - a text editor


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Wed Apr 29, 2015 3:48 pm 
Offline
Member
Member

Joined: Sat Oct 16, 2010 3:38 pm
Posts: 587
I have not built packages before, I only ported a single-file implementation of md5sum (for filesystem driver debugging purposes), and indeed my toolchain automatically knows how to link against the C library.

And as you've seen, userspace/libc/include/dirent.h clearly declares closedir() as:

Code:
int closedir(DIR *dirp);


which is exactly what POSIX wants it to be.


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Wed Apr 29, 2015 3:52 pm 
Offline
Member
Member

Joined: Sat Oct 16, 2010 3:38 pm
Posts: 587
It also says "checking for closedir... no", and then "checking if closedir is declared without macro... yes".

Clearly a contradiction...

ALSO it 'guesses' that 'struct dirent' does not have a d_ino member. But it does.


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Wed Apr 29, 2015 3:58 pm 
Offline
Member
Member

Joined: Wed Mar 30, 2011 12:31 am
Posts: 676
Sounds like it's time to dig into the configure script (and/or the autoconf templates that built it) to see what exactly it's doing for those tests and how they may be failing.

_________________
toaruos on github | toaruos.org | gitlab | twitter | bim - a text editor


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Wed Apr 29, 2015 4:14 pm 
Offline
Member
Member

Joined: Thu Mar 25, 2010 11:26 pm
Posts: 1801
Location: Melbourne, Australia
mariuszp, more than likely that the configure script is compiling a small program with 'closedir()' in it to check for the existence. That compile step is probably failing. It looks like configure is able to find your header files but not able to compile anything. The config.log will tell you.

_________________
If a trainstation is where trains stop, what is a workstation ?


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Thu Apr 30, 2015 3:29 pm 
Offline
Member
Member

Joined: Sat Oct 16, 2010 3:38 pm
Posts: 587
gerryg400 wrote:
mariuszp, more than likely that the configure script is compiling a small program with 'closedir()' in it to check for the existence. That compile step is probably failing. It looks like configure is able to find your header files but not able to compile anything. The config.log will tell you.


Ah... indeed it tried compiling a test program with:

Code:
x86_64-glidix-gcc -o conftest -g -O2   conftest.c  >&5


Which caused the error:

Code:
/usr/lib/gcc/x86_64-glidix/4.9.0/../../../../../usr/x86_64-glidix/bin/ld: cannot find -lg


So i'm guessing the "libg" is needed for debugging (-g flag was passed). Is it possible to make some kind of dummy of that library?


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Thu Apr 30, 2015 3:35 pm 
Offline
Member
Member

Joined: Wed Mar 30, 2011 12:31 am
Posts: 676
I defer to someone with more knowledge of these things, but libg should just be a libc with extra debug things, so you may be able to just copy / symlink your libc. I believe that when building with -g, your gcc specs will use libg instead of libc when linking the final executable.

_________________
toaruos on github | toaruos.org | gitlab | twitter | bim - a text editor


Top
 Profile  
 
 Post subject: Re: GNU tar configure script thinks my OS is Windows
PostPosted: Thu Apr 30, 2015 3:37 pm 
Offline
Member
Member

Joined: Sat Oct 16, 2010 3:38 pm
Posts: 587
OK, symlinking libg to libc caused it to build successfully and now it sees closedir.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: Bing [Bot], MichaelPetch and 25 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group