Skip to content

smlnj installation: error in first cm file memory.cm from nlffi #43

@JohnReppy

Description

@JohnReppy

Version

110.99

Operating System

  • All
  • Linux
  • macOS
  • Windows
  • Other Unix

OS Version

in 01.install.sh file

Processor

x86 (32-bit)

Component

Installation

Severity

Critical

Description of the problem

No response

Transcript

#####in 01.install.sh####

2021-04-13 21:03:49 +0300

config/install.sh
-default
64

config/install.sh: Using shell /bin/sh.
config/install.sh: SML root is /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME.
config/install.sh: Installation directory is /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME.
config/install.sh: Installing version 110.99.
config/install.sh: URL of source archive is http://smlnj.cs.uchicago.edu/dist/working/110.99/.
config/install.sh: installing /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/bin/.arch-n-opsys
config/install.sh: Script /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/bin/.arch-n-opsys reports ARCH=amd64; OPSYS=linux; HEAP_SUFFIX=amd64-linux.
config/install.sh: installing /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/bin/.run-sml
config/install.sh: installing /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/bin/.link-sml
config/install.sh: installing /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/bin/ml-makedepend
config/install.sh: installing /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/bin/heap2exec
/home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/config/unpack: The run-time tree already exists.
config/install.sh: Compiling the run-time system.
(make CHECK_HEAP= RUNTIME="run.amd64-linux" VERSION="v-amd64-linux" AS="as --64" CC="gcc -std=gnu99 -Wall" CFLAGS="-O2 -m64" CPP="gcc -x assembler-with-cpp -E -P" TARGET=AMD64 DEFS="  -DARCH_AMD64 -DSIZE_64 -DOPSYS_UNIX -DOPSYS_LINUX -D_GNU_SOURCE -DGNU_ASSEMBLER -DDLOPEN -DINDIRECT_CFUNC" XOBJS="" XLIBS="../c-libs/dl/libunix-dynload.a" LD_LIBS="-lm -ldl" run.amd64-linux)
...
...

...
...
Here all was Ok!
...

[compiling $/(ckit-lib.cm):ast/(group.cm):parse-to-ast.sml]
[code: 2565, data: 21, env: 1084 bytes]
[stabilizing $/ckit-lib.cm]
[creating directory /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/ckit/src/.cm/amd64-unix]
[code: 874749, data: 31637, inlinable: 0, env: 51839 bytes]
[scanning $c/memory/memory.cm]
[parsing $c/memory/(memory.cm):memaccess.sig]

...
And here error apears!
...

[creating directory /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/nlffi/lib/memory/.cm/SKEL]
[parsing $c/memory/(memory.cm):memalloc.sig]
[parsing $c/memory/(memory.cm):memory.sig]
[parsing $c/memory/(memory.cm):linkage.sig]
[parsing $c/memory/(memory.cm):bitop-fn.sml]
[parsing $c/memory/(memory.cm):memaccess-64-little.sml]
/home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99/SMLNJ_HOME/nlffi/lib/memory/memory.cm:39.1-39.39 Error: architecture not supported yet
[parsing $c/memory/(memory.cm):main-lib-unix.sml]
[parsing $c/memory/(memory.cm):memalloc-a4-unix.sml]
[parsing $c/memory/(memory.cm):memory.sml]
[parsing $c/memory/(memory.cm):linkage-dlopen.sml]
[parsing $c/memory/(memory.cm):mlrep-i32f64.sml]
FAILURE: stabilization of libraries failed
config/install.sh: !!! Installation of libraries and programs failed.

HOMEBREW_VERSION: 3.1.1-22-g586d25a
ORIGIN: https://github.com/Homebrew/brew
HEAD: 586d25a5227ce565cd7e35fc5db935b245944601
Last commit: 5 hours ago
Core tap ORIGIN: https://github.com/Homebrew/linuxbrew-core
Core tap HEAD: 45ae5f7b53f0659af9f228648d9d1d8e4916d642
Core tap last commit: 17 minutes ago
Core tap branch: master
HOMEBREW_PREFIX: /home/linuxbrew/.linuxbrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: :0
HOMEBREW_EDITOR: /home/linuxbrew/.linuxbrew/bin/nvim
Homebrew Ruby: 2.6.3 => /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.3_2/bin/ruby
CPU: quad-core 64-bit skylake
Clang: 11.1 build (parse error)
Git: 2.31.1 => /home/linuxbrew/.linuxbrew/bin/git
Curl: 7.76.0 => /home/linuxbrew/.linuxbrew/opt/curl/bin/curl
Kernel: Linux 5.4.0-70-generic x86_64 GNU/Linux
OS: elementary OS 5.1.7 Hera (hera)
Host glibc: 2.27
/usr/bin/gcc: 8.4.0
/usr/bin/ruby: 2.5.1
glibc: N/A
gcc@5: N/A
xorg: N/A

HOMEBREW_CC: gcc-10
HOMEBREW_CXX: g++-10
CMAKE_PREFIX_PATH: /home/linuxbrew/.linuxbrew
HOMEBREW_GIT: git
ACLOCAL_PATH: /home/linuxbrew/.linuxbrew/share/aclocal
PATH: /home/linuxbrew/.linuxbrew/Homebrew/Library/Homebrew/shims/linux/super:/home/linuxbrew/.linuxbrew/opt/binutils/bin:/usr/bin:/bin:/usr/sbin:/sbin:/home/linuxbrew/.linuxbrew/opt/gcc/bin

Expected Behavior

No response

Steps to Reproduce

/dist/working/110.99

Additional Information

No response

Email address

jplut@harakirimail.com

Comments from smlnj-gforge

Original smlnj-gforge bug number 283

Submitted via web form by Alek jplut@harakirimail.com on 2021-04-13 at 19:25:00

Keywords: architecture_not_supported

comment by Limon Lime on 2021-04-14 20:41:00 +000 UTC

Component:            Installer
                      Compilation of NLFFI
I also can repeat all steps (in MacOSX 10.15, if you need).

comment by Limon Lime on 2021-04-21 21:29:00 +000 UTC

====Linux uname -m x86_64 uname-r ====MACOSX===========
New 110.99.1:
aSame error while compiling NLFFI nlffi/lib/memory:
[parsing $c/memory/(memory.cm):mlrep-i32f64.sml]
FAILURE: stabilization of libraries failed
[[[[[[parsing $c/memory/(memory.cm):memaccess-64-little.sml]
/home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99.1/SMLNJ_HOME/nlffi/lib/memory/memory.cm:39.1-39.39 Error: architecture not supported yet
]]]]]]

Maybe you need full logs ( 00.options.out 01.install.sh.cc 01.install.sh)

/gist.github.com/d8cd35fafea51560db1cab047682042f
/gist.github.com/097fe5bcf4236871b89275127aabef70
/gist.github.com/ad845584109f5d51c6ecf6b1433ac1ec
====MACOSX (opsys DARWIN uname -r 19 uname -p i386======

I don't need that, but I repeated same steps on MacOSX10.15 and result is the same.

I don't understand the bottom line of this error, all tested platforms must be supportable,
install.sh should run without SIZE in patrameters, inspected config/_arch-n-opsys and nlffi/lib/memory/memory.cm should work fine.

comment by Limon Lime on 2021-04-21 21:33:00 +000 UTC

FIX: on the first line not the MACOSX!
uname -r 5.4.0-72-generic!

comment by Limon Lime on 2021-04-22 20:33:00 +000 UTC

I made inline replace on the line of memory.cm:
but dont know which is better LINE 39:

1st variant :(* error bla
2nd variant 
Now it fails when my little-endian system run this line of memory.cm:
memaccess-64-little.sml         (lambdasplit:infinity)

I can't go ahead here, please help with installation because it too complex for me:

[scanning $c/memory/memory.cm]
[parsing $c/memory/(memory.cm):memaccess.sig]
[creating directory /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99.1/SMLNJ_HOME/nlffi/lib/memory/.cm/SKEL]
[parsing $c/memory/(memory.cm):memalloc.sig]
[parsing $c/memory/(memory.cm):memory.sig]
[parsing $c/memory/(memory.cm):linkage.sig]
[parsing $c/memory/(memory.cm):bitop-fn.sml]
[parsing $c/memory/(memory.cm):memaccess-64-little.sml]
[parsing $c/memory/(memory.cm):memaccess-a4s2i4l4f4d8.sml]
[parsing $c/memory/(memory.cm):main-lib-unix.sml]
[parsing $c/memory/(memory.cm):memalloc-a4-unix.sml]
[parsing $c/memory/(memory.cm):memory.sml]
[parsing $c/memory/(memory.cm):linkage-dlopen.sml]
[parsing $c/memory/(memory.cm):mlrep-i32f64.sml]
[compiling $c/memory/(memory.cm):bitop-fn.sml]
[creating directory /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99.1/SMLNJ_HOME/nlffi/lib/memory/.cm/GUID]
[creating directory /home/linuxbrew/.linuxbrew/Cellar/smlnj/110.99.1/SMLNJ_HOME/nlffi/lib/memory/.cm/amd64-unix]
[code: 6057, data: 1, env: 669, inlinable: 1529 bytes]
[compiling $c/memory/(memory.cm):mlrep-i32f64.sml]
[code: 3173, data: 21, env: 3678, inlinable: 2138 bytes]
[compiling $c/memory/(memory.cm):memaccess.sig]
[code: 81, data: 1, env: 2820 bytes]
[compiling $c/memory/(memory.cm):memalloc.sig]
[code: 81, data: 1, env: 214 bytes]
[compiling $c/memory/(memory.cm):memory.sig]
[code: 81, data: 1, env: 2975 bytes]
[compiling $c/memory/(memory.cm):memaccess-64-little.sml]
nlffi/lib/memory/memaccess-64-little.sml:3.48-3.66 Error: unbound structure: RawMemInlineT in path RawMemInlineT.w32l
nlffi/lib/memory/memaccess-64-little.sml:3.20-3.38 Error: unbound structure: RawMemInlineT in path RawMemInlineT.w32l
nlffi/lib/memory/memaccess-64-little.sml:5.35-5.53 Error: unbound structure: RawMemInlineT in path RawMemInlineT.w32s
nlffi/lib/memory/memaccess-64-little.sml:5.3-5.21 Error: unbound structure: RawMemInlineT in path RawMemInlineT.w32s
FAILURE: stabilization of libraries failed

Linux Mac user who uses Homebrew you will see this error if you run brew install juplutonic/homebrew-tap/smlnj

comment by Limon Lime on 2021-04-22 20:40:00 +000 UTC

FIX: the first paragraph should be:
I made inline replacement on the line 39 of memory.cm file:
but Idont know which is better(will not fail) :
1st variant: memaccess-a4s2i4l4f4d8.sml      (lambdasplit:infinity)
2nd variant: (*# error architecture not supported yet*)

*And last paragraph should be Linux or Mac users

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingfixed-in-110.99.3issues that will be fixed in the 110.99.3 versiongforgebug (or feature request) ported from smlnj-gforge repositoryinstallationproblem with installerlinuxnlffi-libnlffigen

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions