all of a sudden fricas does not longer start: change to MacOS Sonoma 14.3.1

39 views
Skip to first unread message

Prof. Dr. Johannes Grabmeier

unread,
Mar 8, 2024, 10:34:05 AM3/8/24
to fricas...@googlegroups.com
Hi all,

all of a sudden (I have moved to MacOS version Sonoma 14.3.1) FriCAS
does no longer start:

/usr/local/bin$ fricas
mmap: Operation not permitted
fatal error encountered in SBCL pid 1525 pthread 0x1d86b5c40:
load_core_bytes(3,60000,0x300000000,10000) failed

Bad frame pointer 0x1d86b5cec [valid range=0x3000000000000..0x100000000]


Any hints what to do: New version of SBCL required? New compilation od
FriCAS, anything else?


--
Mit freundlichen Grüßen

Johannes Grabmeier

Prof. Dr. Johannes Grabmeier,
Köckstraße 1, D-94469 Deggendorf
Tel. +49-(0)-991-2979584, Tel. +49-(0)-151-681-70756
Fax: +49-(0)-991-2979592

Dima Pasechnik

unread,
Mar 8, 2024, 12:33:54 PM3/8/24
to fricas...@googlegroups.com
Probably an OS upgrade requires a rebuild of sbcl.

Prof. Dr. Johannes Grabmeier

unread,
Mar 9, 2024, 6:50:43 AM3/9/24
to fricas...@googlegroups.com
yes, this seems to be the problem, sbcl 2.1.2  crashes with Sonoma.
Recommendation in the internet  to upgrade to 2.3.8 or higher before
moving to Sonoma.

Found a binary for sbcl 2.4.0 for macOS (Darwin), which I installed and
which works

Then I started to recompile FriCAS 1.3.10.

setting proberly (as in January, when I succeeded to compile FriCAS on
arm64 OS Ventura

export CC="gcc -march=armv8.5-a"

Then check, whether the correct C-compiler is active:
                ~/fricas-1.3.10$

                gcc -v
                Apple clang version 13.1.6 (clang-1316.0.21.2.5)
                Target: arm64-apple-darwin23.3.0
                Thread model: posix
                InstalledDir:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

all seems ok

Then

configure --enable-case-insensitive-file-system-check=no

seems to work ok, no mentioning of x86

but then

gmake fails, which refers somehow to the x86 architecture:

~/fricas-1.3.10$ gmake
cd ./src && gmake BUILD_DATE="`date`" all-src
gmake[1]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src“ wird betreten
cd doc && gmake copy-helpfiles
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/doc“ wird
betreten
mkdir -p
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/share/spadhelp
cp *.help
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/share/spadhelp
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/doc“ wird
verlassen
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/lib“ wird
betreten
gcc -march=armv8.5-a -g -dynamiclib -single_module bsdsignal.o cfuns-c.o
sockio-c.o  -o
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/lib/libspad.so
ld: warning: ignoring file bsdsignal.o, building for macOS-x86_64 but
attempting to link with file built for unknown-arm64
ld: warning: ignoring file cfuns-c.o, building for macOS-x86_64 but
attempting to link with file built for unknown-arm64
ld: warning: ignoring file sockio-c.o, building for macOS-x86_64 but
attempting to link with file built for unknown-arm64
ld: can't open output file for writing:
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/lib/libspad.so,
errno=2 for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
gmake[2]: *** [Makefile:262:
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/lib/libspad.so]
Fehler 1
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/lib“ wird
verlassen
gmake[1]: *** [Makefile:228: all-lib] Fehler 2
gmake[1]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src“ wird verlassen
gmake: *** [Makefile:250: all-src] Fehler 2


Any idea or hint, what else I have to set to avoid relation to x86_64 ??


Am 08.03.24 um 18:33 schrieb Dima Pasechnik:

Qian Yun

unread,
Mar 9, 2024, 8:22:05 PM3/9/24
to fricas...@googlegroups.com
Can you provide a full build log so that we can know the compiler
flags when building bsdsignal.o?

BTW, I think that exporting CC is not needed. (It's not needed in
github CI.)

Also in your January post, your build problem mysteriously disappears.

- Qian

Prof. Dr. Johannes Grabmeier

unread,
Mar 11, 2024, 3:55:20 AM3/11/24
to fricas...@googlegroups.com
yes, here is config.log


Am 10.03.24 um 02:22 schrieb Qian Yun:
config.log

Qian Yun

unread,
Mar 11, 2024, 6:38:35 AM3/11/24
to fricas...@googlegroups.com
The config.log looks OK, just like the previous post in January.

One minor thing: do you have X11 presented at /usr/X11?
Is that installed by homebrew or what?

I'd like to see the log of "make" output. Since your build fails
at very early stage, it should not be long.

- Best,
- Qian

Prof. Dr. Johannes Grabmeier

unread,
Mar 11, 2024, 6:47:43 AM3/11/24
to fricas...@googlegroups.com
Thanks  Quian for all your help

Am 11.03.24 um 11:38 schrieb Qian Yun:
> The config.log looks OK, just like the previous post in January.
>
> One minor thing: do you have X11 presented at /usr/X11?
> Is that installed by homebrew or what?

yes, but I cannot remember, how can I check?

>
> I'd like to see the log of "make" output.  Since your build fails
> at very early stage, it should not be long.

translations from German:

    Verzeichnis .. wird betreten : directory .. is entered

    Verzeichnis .. wird verlassen : directory .. is left

~/fricas-1.3.10$ gmake
cd ./src && gmake BUILD_DATE="`date`" all-src
gmake[1]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src“ wird betreten
cd doc && gmake copy-helpfiles
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/doc“ wird
betreten
mkdir -p
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/share/spadhelp
cp *.help
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/share/spadhelp
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/doc“ wird
verlassen
gmake[2]: Verzeichnis „/Users/jgrabmeier/fricas-1.3.10/src/lib“ wird
betreten
gcc -march=armv8.5-a -g -dynamiclib -single_module bsdsignal.o cfuns-c.o
sockio-c.o  -o
/Users/jgrabmeier/fricas-1.3.10/target/arm-apple-darwin23.3.0/lib/libspad.so

Qian Yun

unread,
Mar 11, 2024, 6:51:23 AM3/11/24
to fricas...@googlegroups.com
Hi,

I'd like a full log. I can only see the link stage of cfuns-c.o,
but not the compile stage of cfuns-c.o.

So please do "make clean" first, then collect and post the log
of "make".

- Best,
- Qian

Qian Yun

unread,
Mar 11, 2024, 8:22:25 AM3/11/24
to fricas...@googlegroups.com
After some private exchange of logs, this problem is more clear:

1. on macOS, in-tree build can succeed on the release tarball,
but "make clean" will destroy src/algebra/*.spad because of
the case-insensitive filesystem.

2. a fresh build results in a success build. But the original
problem of linker failure caused by mixture of x86 and arm
object files is not reproduced.

- Qian

Prof. Dr. Johannes Grabmeier

unread,
Mar 11, 2024, 9:17:38 AM3/11/24
to fricas...@googlegroups.com
thanks Qian to your help!! (We had a lot of private discussion meanwhile).

Now I succeed to build FriCAS 1.3.10 on MacOS Sonoma 14.3.1 using X11.

as follows:

0. I installed SBCL 2.4.0 als 2.1.2 is not compatible with Sonoma

1. use a terminal, not an iterm (to avoid confusion with x86 last year I
had to use export CC="gcc -march=armv8.5-a", which seems no longer to be
necessary)

2. Then, because of Apple's case insensitive file system, I commented
out these checks in configure:

4557 #if test -z "$PREGENERATED" ; then
4558 #  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for
in-tree build on case insensitive file system" >&5
4559 #printf %s "checking for in-tree build on case insensitive file
system... " >&6; }
4560 #  if test "$fricas_top_srcdir" = "$fricas_pwd"; then
4561 #   rm -f ac_TEST_filenames_CASE_sensitive
ac_test_filenames_case_sensitive
4562 #   echo foo > ac_test_filenames_case_sensitive
4563 #   if test -f ac_TEST_filenames_CASE_sensitive; then
4564 #      rm ac_test_filenames_case_sensitive
4565 #      as_fn_error $? "in-tree build (without pre-generated) on
case insensitive
4566 #        file system is not supported. Use out-of-source-tree build
instead." "$LINENO" 5
4567 #   else
4568 #      rm ac_test_filenames_case_sensitive
4569 #      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
4570 #printf "%s\n" "no" >&6; }
4571 #   fi
4572 #  else
4573 #   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
4574 #printf "%s\n" "no" >&6; }
4575 #  fi
4576 #fi

In the light of this, can one change this check appropriately?

3. then configure, make, make install works perfectly:


FRICAS="/usr/local/lib/fricas/target/arm-apple-darwin23.3.0"
spad-lib="/usr/local/lib/fricas/target/arm-apple-darwin23.3.0/lib/libspad.so"
foreign routines found
openServer result 0
                       FriCAS Computer Algebra System
                Version: FriCAS 1.3.10 built with sbcl 2.4.0
                   Timestamp: Mo 11 Mär 2024 14:01:48 CET
-----------------------------------------------------------------------------
   Issue )copyright to view copyright notices.
   Issue )summary for a summary of useful system commands.
   Issue )quit to leave FriCAS and return to shell.
-----------------------------------------------------------------------------

Type: Void

(1) -> 1+1

   (1)  2
Type: PositiveInteger
(2) -> draw(sin x, x= 0..10)
   Compiling function %C with type DoubleFloat -> DoubleFloat
   Graph data being transmitted to the viewport manager...
   FriCAS2D data being transmitted to the viewport manager...

   (2)  TwoDimensionalViewport: "sin(x)"
Type: TwoDimensionalViewport





Am 11.03.24 um 11:38 schrieb Qian Yun:

Qian Yun

unread,
Mar 11, 2024, 9:31:15 AM3/11/24
to fricas...@googlegroups.com


On 3/11/24 21:17, Prof. Dr. Johannes Grabmeier wrote:
> thanks Qian to your help!! (We had a lot of private discussion meanwhile).
>
> Now I succeed to build FriCAS 1.3.10 on MacOS Sonoma 14.3.1 using X11.
>
> as follows:
>
> 0. I installed SBCL 2.4.0 als 2.1.2 is not compatible with Sonoma
>
> 1. use a terminal, not an iterm (to avoid confusion with x86 last year I
> had to use export CC="gcc -march=armv8.5-a", which seems no longer to be
> necessary)
>
> 2. Then, because of Apple's case insensitive file system, I commented
> out these checks in configure:

You don't need to comment out these things:

It allows in-tree build for the fricas-*-full.tar.bz2 (with
pre-generated), it forbids in-tree build for git trees.

Note that "make clean" will destroy build tree, so out-of-tree
build should be preferred to use.

- Qian
Reply all
Reply to author
Forward
0 new messages