Created attachment 897211 [details] build.log Description of problem: There seems to be some kind of code-gen bug on aarch64 which affects alt-ergo. ocamlopt.opt -c -annot -inline 1000 -I /usr/lib64/ocaml/zarith -I /usr/lib64/ocaml/ocamlgraph -I /usr/lib64/ocaml/lablgtk2 -I +threads -I src/util -I src/structures -I src/theories -I src/instances -I src/sat -I src/preprocess -I src/parsing -I src/gui -I src/main -for-pack AltErgo -g -ccopt -Wl,-z,relro,-z,now src/theories/intervals.ml /tmp/camlasm166d5e.s: Assembler messages: /tmp/camlasm166d5e.s:20877: Error: conditional branch out of range File "src/theories/intervals.ml", line 1: Error: Assembler error, input left in file /tmp/camlasm166d5e.s make: *** [src/theories/intervals.cmx] Error 2 Version-Release number of selected component (if applicable): alt-ergo on Fedora Rawhide OCaml compiler on Fedora Rawhide The full build log is attached.
Now build fails in other way: + sed -i 's/^OFLAGS =.*/& -g -ccopt -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld/' Makefile.users sed: -e expression #1, char 48: unknown option to `s' But this happens on all platforms. Edited sed to use "+" instead of "/" resulted with: ocamlopt.opt: unknown option '-specs=/usr/lib/rpm/redhat/redhat-hardened-ld'. Usage: ocamlopt <options> <files> Options are: So I tested how it works with sed totally disabled (which is probably wrong) and it built: Zapisano: /builddir/build/RPMS/alt-ergo-0.99.1-2.fc23.aarch64.rpm Zapisano: /builddir/build/RPMS/alt-ergo-gui-0.99.1-2.fc23.aarch64.rpm Zapisano: /builddir/build/RPMS/alt-ergo-debuginfo-0.99.1-2.fc23.aarch64.rpm So issue is probably no longer AArch64 related.
You have to put -ccopt in front of each argument, otherwise ocamlopt won't pass them to the compiler but will try to parse them itself, ie. this would be correct: ocamlopt ... -ccopt -Wl,-z,relro -ccopt -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ... So that sed expression isn't going to work as written. Anyhow by not using sed you're just not passing the hardening options down to the compiler which is no big deal.
Fixed in Rawhide.