Re: di fails to build

Derek Homeier <[email protected]> Wed, 8 May 2024 15:20:33 +0200
Newsgroups gmane.os.apple.fink.general
Message-ID <[email protected]>
On 8 May 2024, at 3:31 AM, Scott Hannahs via Fink-users <[email protected]> wrote:
> 
> It seems that it is hardwired to look for /usr/local/share/locale.  I tried to redirect it to /opt/sw/share/locale but that did not work for some reason.
> 
It is built with `prefix=/opt/sw`; I *think* that should work, otherwise probably would be broken
already on older system versions.

> The mkcl.sh script that it uses is not very informative of why something failed.   As you can see below COMPILE … fail.
> 
> -Scott
> 
> Attempt to build on Sonoma 14.4.1:
> 
> COMPILE didiskutil.c ... ok
> COMPILE digetentries.c ... fail
> make[2]: *** [digetentries.o] Error 1
> make[1]: *** [all-sh] Error 2
> make: *** [all] Error 2
> ### execution of prefix=$i failed, exit code 2
> ### execution of /tmp/fink.VmG0M failed, exit code 2
> Removing runtime build-lock...
> Removing build-lock package...
> /opt/sw/bin/dpkg-lockwait -r fink-buildlock-di-4.52-1
> (Reading database ... 392371 files and directories currently installed.)
> Removing fink-buildlock-di-4.52-1 (2024.05.07-21.14.29) ...
> Failed: phase compiling: di-4.52-1 failed
> 
That script is maximally non-verbose really, but changing to
disp="${disp}COMPILE ${cmd} … “

I could nail the error down to

cc -O2 -I/opt/sw/include -Os -DDI_LOCALE_DIR=\"/opt/sw/share/locale\" -fno-common -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unknown-pragmas -Wno-float-equal -Wno-shift-sign-overflow -Wno-stringop-overflow -Wno-stringop-truncation -Wno-poison-system-directories -Wformat -Wformat-security -Werror=format-security -Werror,-Wunused-command-line-argument -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fstack-protector-all -DPIE -fPIE -Wno-unknown-warning-option -Weverything -Wno-padded -Wno-format-nonliteral -Wno-cast-align -Wno-system-headers -Wno-disabled-macro-expansion -c digetentries.c ... fail

digetentries.c:180:11: warning: 'USE_ETC_FILESYSTEMS' is not defined, evaluates to 0 [-Wundef]
#     if (USE_ETC_FILESYSTEMS)
          ^
digetentries.c:580:22: error: variable has incomplete type 'struct mnttab'
    struct mnttab    mntEntry;
                     ^
digetentries.c:580:12: note: forward declaration of 'struct mnttab'
    struct mnttab    mntEntry;
           ^
digetentries.c:590:39: error: invalid application of 'sizeof' to an incomplete type 'struct mnttab'
    while (fread ((char *) &mntEntry, sizeof (struct mnttab), 1, f) == 1)
                                      ^      ~~~~~~~~~~~~~~~
digetentries.c:580:12: note: forward declaration of 'struct mnttab'
    struct mnttab    mntEntry;
           ^
digetentries.c:600:45: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
                    sizeof (diDiskInfo_t) * *diCount);
                                          ~ ^~~~~~~~
digetentries.c:616:6: warning: '_mem_struct_mnttab_mntopts' is not defined, evaluates to 0 [-Wundef]
# if _mem_struct_mnttab_mntopts
     ^
3 warnings and 2 errors generated.


Don’t know if setting USE_ETC_FILESYSTEMS can somehow be patched around here or if that is a
more fundamental conflict with 14.x/Xcode 15 headers.

HTH
			Derek



_______________________________________________
Fink-users mailing list
[email protected]
List archive:
https://sourceforge.net/p/fink/mailman/fink-users/
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-users