ocsigen / ocsigen-start

Ocsigen-start: Higher-level library to develop Web and mobile applications with users, (pre)registration, notifications, etc.
Other
75 stars 32 forks source link

Problem installing #637

Closed gantsevdenis closed 3 years ago

gantsevdenis commented 3 years ago

(Not sure if I should create an issue here, or contact distro maintainers) Trying to install ocsigen-start requires to downgrade my ocaml from 4.13.1 to 4.11.2. Which I also tried, but failed with a compilation error (related to ocaml 4.11.2 installation, not ocsigen-start itself):

[ERROR] The compilation of ocaml-base-compiler.4.11.2 failed at "make -j3 world.opt".

#=== ERROR while compiling ocaml-base-compiler.4.11.2 =========================#
# context     2.1.0 | linux/x86_64 |  | https://opam.ocaml.org#4c81f7e8
# path        ~/.opam/4.11.2/.opam-switch/build/ocaml-base-compiler.4.11.2
# command     ~/.opam/opam-init/hooks/sandbox.sh build make -j3 world.opt
# exit-code   2
# env-file    ~/.opam/log/ocaml-base-compiler-15683-a50413.env
# output-file ~/.opam/log/ocaml-base-compiler-15683-a50413.out
### output ###
# [...]
# gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -Wdeclaration-after-statement -fno-common -fexcess-precision=standard -fno-tree-vrp -ffunction-sections -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE   -DNATIVE_CODE -DTARGET_amd64 -DMODEL_default -DSYS_linux   -o signals_nat_n.o signals_nat.c
# signals_nat.c:198:13: error: variably modified ‘sig_alt_stack’ at file scope
#   198 | static char sig_alt_stack[SIGSTKSZ];
#       |             ^~~~~~~~~~~~~
# make[3]: *** [Makefile:344: signals_nat_n.o] Error 1
# make[3]: *** Waiting for unfinished jobs....
# make[3]: Leaving directory '/home/denis/.opam/4.11.2/.opam-switch/build/ocaml-base-compiler.4.11.2/runtime'
# make[2]: *** [Makefile:777: makeruntimeopt] Error 2
# make[2]: Leaving directory '/home/denis/.opam/4.11.2/.opam-switch/build/ocaml-base-compiler.4.11.2'
# make[1]: *** [Makefile:223: opt.opt] Error 2
# make[1]: Leaving directory '/home/denis/.opam/4.11.2/.opam-switch/build/ocaml-base-compiler.4.11.2'
# make: *** [Makefile:283: world.opt] Error 2

System: opensuse Tumbleweed, x86-64:

denis@dgecko:~> opam --version
2.1.0
denis@dgecko:~> ocaml --version
The OCaml toplevel, version 4.13.1
denis@dgecko:~> gcc --version
gcc (SUSE Linux) 11.2.1 20210816 [revision 056e324ce46a7924b5cf10f61010cf9dd2ca10e9]

Is ocsigen-start supposed to work with the most recent Ocaml?

ilankri commented 3 years ago

Is ocsigen-start supposed to work with the most recent Ocaml?

Hello @gantsevdenis,

Yes, it is supposed to work with the latest version of OCaml (4.13.1). I have just installed it on Debian 11.1 with opam 2.1.0 on a fresh local swtich:

mkdir -p /tmp/test-ocsigen-start
cd /tmp/test-ocsigen-start
opam update
opam switch --empty create .
opam install ocsigen-start
gantsevdenis commented 3 years ago

thanks @ilankri , this worked (with small hack of adding export CHECK_IF_PREINSTALLED=false; ..., otherwise ocamlbuild breaks, even if I already have exactly the same version installed globally). It looks like my global installation is broken somehow, I confirm it installs correctly from empty environment with Ocaml 4.13.1 Thanks for your help!