Greetings,

On 18/04/25 00:26, Camm Maguire wrote:
> Greetings!
> 
> "Chun Tian (binghe)" <binghe.l...@gmail.com> writes:
> 
>> On 12/04/25 21:14, Camm Maguire wrote:
> 
>>>> Do you have release plans for GCL 2.6.15?
>>>
>>
>> At this moment I'm not sure 2.7 is really better in every respect. I saw you
>> were trying to build Debian "axiom" package by GCL 2.7 but it seems that
>> currently the Debian package is still based on GCL 2.6 (I don't have Debian 
>> sid
>> environment, only a Debian testing.)
>>
>> If you can make a 2.6.15 release (and consider it's the last 2.6.x release), 
>> one
>> immediate good thing is that I can send a small PR to MacPorts to update
>> existing "gcl" package, such that it will work on more macOS versions (more 
>> than
>> what 2.6.14 can support). And I think it's good to have Axiom (ACL2, Maxima,
>> etc.) to support both GCL 2.6.15 and 2.7.1, and then people can compare on 
>> the
>> performance of these software under different GCL versions, to confirm if GCL
>> 2.7 is really better in every respect.
> 
> OK, you have persuaded me.  But I think it would be good to get the mac
> arm build working before the next release.  2.6.13 only lasted one
> month, so perhaps we could try a cleanup only 2.6.15 and 2.7.2 in this
> time frame, and then move on to other items.  Can you please point me to
> a build log showing the arm failure?  I've explored the macports site
> and cannot find it.
> 
The immediate issues when trying to build GCL (2.6 and 2.7) in ARM64 macOS, is
that the "configuration" script cannot pass. I think the key issue is that no
such configuration "aarch64 + macosx" exists in h/*.  For GCL 2.7, using
i386-macosx as a workaround doesn't work (of course).  (I wanted to learn the
way of aarch64-linux but then found h/linux.h is mostly related to ELF format
while macOS uses Mach-O.)

In attach you can find 3 logs as the outputs of configuration scripts. I think
the first step is to figure out a reasonable "aarch64-macosx.h".

--Chun
$ ./configure 
checking build system type... aarch64-apple-darwin24.4.0
checking host system type... aarch64-apple-darwin24.4.0
host=aarch64-apple-darwin24.4.0
use=unknown
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 the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking how to run the C preprocessor... gcc -E
checking for CFLAG -fsigned-char... yes
checking for CFLAG -pipe... yes
checking for CFLAG -fcommon... yes
checking for CFLAG -fno-builtin-malloc... yes
checking for CFLAG -fno-builtin-free... yes
checking for CFLAG -fno-PIE... yes
checking for CFLAG -fno-pie... yes
checking for CFLAG -fno-PIC... yes
checking for CFLAG -fno-pic... yes
checking for CFLAG -std=gnu17... yes
checking for CFLAG -Wall... yes
checking for CFLAG -Wno-builtin-requires-header... yes
checking for CFLAG -Wno-empty-body... yes
checking for CFLAG -Wno-self-assign... yes
checking for CFLAG -Wno-unused-but-set-variable... yes
checking for CFLAG -Wno-tautological-compare... yes
checking for LDFLAG -no-pie... no
checking for inline semantics... new
checking for clang... yes
checking for gawk... no
checking for nawk... no
checking for awk... awk
checking for makeinfo... makeinfo
checking system version (for dynamic loading)... Darwin-24.4.0
checking for setjmp.h... yes
checking sizeof jmp_buf... 192
checking for unistd.h... yes
checking for sysconf in -lc... yes
checking _SC_CLK_TCK... 0
checking for gmp.h... yes
checking for __gmpz_init in -lgmp... yes
checking for external gmp version... good
checking for leading underscore in object symbols... "yes"
checking "for GNU ld option -Map"... "no"
checking for size of gmp limbs... 8
checking _SHORT_LIMB... no
checking _LONG_LONG_LIMB... no
checking for X... libraries , headers 
checking for main in -lX11... yes
checking for xdr_double... yes
checking __builtin_clzl... yes
checking __builtin_ctzl... yes
checking __builtin___clear_cache... no
checking size of long... 8
checking for time.h... yes
checking for sys/time.h... yes
checking size of time_t... 8
checking for byte order... little
checking for word order... little
checking for pagewidth... 14
checking for required object alignment... 8
checking for C extension variable alignment... __attribute__ ((aligned (8)))
checking for C extension noreturn function attribute... __attribute__ 
((noreturn))
checking sizeof struct contblock... 16
checking for sbrk... yes
checking for ADDR_NO_RANDOMIZE constant... no assuming 0x40000
checking for ADDR_COMPAT_LAYOUT constant... no
checking for ADDR_LIMIT_3GB constant... no
checking for personality(ADDR_NO_RANDOMIZE) support... no
checking that sbrk is (now) non-random... configure: error: cannot trap sbrk
$ ./configure --enable-machine=386-macosx
checking for a BSD-compatible install... /opt/local/bin/ginstall -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /opt/local/bin/gmkdir -p
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 xargs -n works... yes
checking how to create a pax tar archive... gnutar
checking for emacs... emacs
checking where .elc files should go... ${datarootdir}/emacs/site-lisp
checking for gawk... (cached) awk
checking build system type... aarch64-apple-darwin24.4.0
checking host system type... aarch64-apple-darwin24.4.0
host=aarch64-apple-darwin24.4.0
enable_machine=386-macosx
use=386-macosx
checking whether make supports the include directive... yes (GNU style)
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 the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
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 ranlib... ranlib
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for CFLAG -fsigned-char... yes
checking for CFLAG -pipe... yes
checking for CFLAG -fcommon... yes
checking for CFLAG -fno-builtin-malloc... yes
checking for CFLAG -fno-builtin-free... yes
checking for CFLAG -fno-PIE... yes
checking for CFLAG -fno-pie... yes
checking for CFLAG -fno-PIC... yes
checking for CFLAG -fno-pic... yes
checking for CFLAG -std=gnu17... yes
checking for CFLAG -Wall... yes
checking for CFLAG -Wno-builtin-requires-header... yes
checking for CFLAG -Wno-empty-body... yes
checking for CFLAG -Wno-self-assign... yes
checking for CFLAG -Wno-unused-but-set-variable... yes
checking for CFLAG -D_FILE_OFFSET_BITS=64... yes
checking for CFLAG -D_TIME_BITS=64... yes
checking for CFLAG -fbracket-depth=512... yes
checking for LDFLAG -no-pie... no
checking for LDFLAG -Wl,-z,relro... no
checking for inline semantics... new
checking for CFLAG -Wno-incomplete-setjmp-declaration... yes
checking for LDFLAG -Wl,-no_pie... yes
checking for CFLAG -m32... no
cannot add -m32 to CFLAGS
$ ./configure 
checking for a BSD-compatible install... /opt/local/bin/ginstall -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /opt/local/bin/gmkdir -p
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 xargs -n works... yes
checking how to create a pax tar archive... gnutar
checking for emacs... emacs
checking where .elc files should go... ${datarootdir}/emacs/site-lisp
checking for gawk... (cached) awk
checking build system type... aarch64-apple-darwin24.4.0
checking host system type... aarch64-apple-darwin24.4.0
host=aarch64-apple-darwin24.4.0
use=
checking whether make supports the include directive... yes (GNU style)
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 the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
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 ranlib... ranlib
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for CFLAG -fsigned-char... yes
checking for CFLAG -pipe... yes
checking for CFLAG -fcommon... yes
checking for CFLAG -fno-builtin-malloc... yes
checking for CFLAG -fno-builtin-free... yes
checking for CFLAG -fno-PIE... yes
checking for CFLAG -fno-pie... yes
checking for CFLAG -fno-PIC... yes
checking for CFLAG -fno-pic... yes
checking for CFLAG -std=gnu17... yes
checking for CFLAG -Wall... yes
checking for CFLAG -Wno-builtin-requires-header... yes
checking for CFLAG -Wno-empty-body... yes
checking for CFLAG -Wno-self-assign... yes
checking for CFLAG -Wno-unused-but-set-variable... yes
checking for CFLAG -D_FILE_OFFSET_BITS=64... yes
checking for CFLAG -D_TIME_BITS=64... yes
checking for CFLAG -fbracket-depth=512... yes
checking for LDFLAG -no-pie... no
checking for LDFLAG -Wl,-z,relro... no
checking for inline semantics... new
checking for gawk... (cached) awk
checking for CFLAG -pg... yes
checking working gprof... ok
checking for makeinfo... ${SHELL} '/Volumes/GNU/gcl/gcl/missing' makeinfo
checking system version (for dynamic loading)... Darwin-24.4.0
checking for setjmp.h... yes
checking sizeof jmp_buf... 192
checking for unistd.h... (cached) yes
checking for sysconf in -lc... yes
checking _SC_CLK_TCK... 0
checking for gmp.h... yes
checking for __gmpz_init in -lgmp... yes
checking for external gmp version... good
checking for leading underscore in object symbols... "yes"
checking for size of gmp limbs... 8
checking _SHORT_LIMB... no
checking _LONG_LONG_LIMB... no
checking for GNU ld option -Map... no
checking for X... libraries , headers 
checking for main in -lX11... yes
checking for dlopen in -ldl... yes
checking for xdr_double... yes
checking __builtin_clzl... yes
checking __builtin_ctzl... yes
checking __builtin___clear_cache... no
checking size of long... 8
checking size of short... 2
checking size of int... 4
checking size of char... 1
checking for math.h... yes
checking for complex.h... yes
checking for byte order... little
checking for word order... little
checking for hugepagewidth... not found
checking for pagewidth... 14
checking for required object alignment... 8
checking for C extension variable alignment... __attribute__ ((aligned (8)))
checking for C extension noreturn function attribute... __attribute__ 
((noreturn))
checking sizeof struct contblock... 16
checking CSTACK_DIRECTION... -1
checking finding CSTACK_ALIGNMENT... 1
checking CSTACK_TOP... 0x16b287fff
checking relocated CSTACK_TOP... 0x16f313fff
checking cstack bits... 33
checking NEG_CSTACK_ADDRESS... no
checking finding default linker script... got it
checking output_arch... not found
configure: trying to adjust text start
configure: min log text start 62
configure: max log text start 0
checking our linker script... none found or not needed
checking mem top... 0x8000000000000000
checking finding upper mem half range... 0x4000000000000000
checking sizeof long long int... no
checking for dirent.h... yes
checking for d_type... yes
checking for getcwd... yes
checking for getwd... yes
checking for rename... yes
checking for uname... yes
checking for readlinkat... yes
checking for sys/ioctl.h... yes
checking for elf.h... no
checking for elf_abi.h... no
checking for sys/sockio.h... yes
checking for sin in -lm... yes
checking for main in -lmingwex... no
checking for values.h... no
checking for float.h... yes
checking for isnormal... yes
checking for isfinite... yes
checking for sockets... checking for connect... yes
checking for gethostbyname... yes
checking for readline/readline.h... yes
checking for rl_initialize in -lreadline... yes
checking for el_getc in -lreadline... no
checking for rl_completion_matches in -lreadline... yes
checking RL_COMPLETION_ENTRY_FUNCTION_TYPE_FUNCTION... no
checking RL_COMPLETION_ENTRY_FUNCTION_TYPE_RL_COMPENTRY_FUNC_T... yes
checking RL_READLINE_NAME_TYPE_CHAR... no
checking RL_READLINE_NAME_TYPE_CONST_CHAR... yes
checking For network code for nsocket.c... yes
checking check for listen using fcntl... yes
checking for profil... no
checking for setenv... yes
checking for _cleanup... yes
checking FIONBIO vs. O_NONBLOCK for nonblocking I/O... O_NONBLOCK
checking check for SV_ONSTACK... yes
checking check for SIGSYS... yes
checking check for SIGEMT... yes
checking for sigaltstack... yes
checking for feenableexcept... no
checking for dis-asm.h... no
checking for tclsh... tclsh
checking for tcl/tk... not found
checking for sys/mman.h... yes
checking for mprotect... yes
checking for alloca.h... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
Unable to guess machine type
use configure --enable-machine=XXX, for XXX such that h/XXX.defs exists, ie in 
h/*.defs

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to