Skip to content

pkgsMusl.ocamlPackages.ocaml: -r and -pie may not be used together #124476

@nomeata

Description

@nomeata

It used to be possible to build ocaml (it is possible on 20.09), but these days it fails with:

$ nix-build -A pkgsMusl.ocamlPackages.ocaml
…
../../ocamlopt.opt -g -nostdlib -I ../../stdlib -strict-sequence -principal -absname -w +a-4-9-40-41-42-44-45-48-66 -warn-error A -bin-annot -safe-string -strict-formats -I byte -function-sections -I native -pack -o native/dynlink_compilerlibs.cmx dynlink_compilerlibs/binutils.cmx dynlink_compilerlibs/config.cmx dynlink_compilerlibs/build_path_prefix_map.cmx dynlink_compilerlibs/misc.cmx dynlink_compilerlibs/identifiable.cmx dynlink_compilerlibs/numbers.cmx dynlink_compilerlibs/arg_helper.cmx dynlink_compilerlibs/clflags.cmx dynlink_compilerlibs/profile.cmx dynlink_compilerlibs/consistbl.cmx dynlink_compilerlibs/terminfo.cmx dynlink_compilerlibs/warnings.cmx dynlink_compilerlibs/local_store.cmx dynlink_compilerlibs/load_path.cmx dynlink_compilerlibs/int_replace_polymorphic_compare.cmx dynlink_compilerlibs/location.cmx dynlink_compilerlibs/longident.cmx dynlink_compilerlibs/docstrings.cmx dynlink_compilerlibs/syntaxerr.cmx dynlink_compilerlibs/ast_helper.cmx dynlink_compilerlibs/ast_mapper.cmx dynlink_compilerlibs/attr_helper.cmx dynlink_compilerlibs/builtin_attributes.cmx dynlink_compilerlibs/ident.cmx dynlink_compilerlibs/path.cmx dynlink_compilerlibs/primitive.cmx dynlink_compilerlibs/type_immediacy.cmx dynlink_compilerlibs/types.cmx dynlink_compilerlibs/btype.cmx dynlink_compilerlibs/subst.cmx dynlink_compilerlibs/predef.cmx dynlink_compilerlibs/datarepr.cmx dynlink_compilerlibs/cmi_format.cmx dynlink_compilerlibs/persistent_env.cmx dynlink_compilerlibs/env.cmx dynlink_compilerlibs/debuginfo.cmx dynlink_compilerlibs/lambda.cmx dynlink_compilerlibs/runtimedef.cmx dynlink_compilerlibs/instruct.cmx dynlink_compilerlibs/opcodes.cmx dynlink_compilerlibs/bytesections.cmx dynlink_compilerlibs/dll.cmx dynlink_compilerlibs/meta.cmx dynlink_compilerlibs/symtable.cmx dynlink_compilerlibs/asttypes.cmx dynlink_compilerlibs/parsetree.cmx dynlink_compilerlibs/outcometree.cmx dynlink_compilerlibs/cmo_format.cmx dynlink_compilerlibs/cmxs_format.cmx
/nix/store/30kg865p8ixsvblqypmfwzvqx72fglws-binutils-2.35.1/bin/ld: -r and -pie may not be used together
File "/build/ocaml-4.12.0/otherlibs/dynlink/native/dynlink_compilerlibs.cmx", line 1:
Error: Error during partial linking
make[4]: *** [Makefile:197: native/dynlink_compilerlibs.cmx] Error 2
make[4]: Leaving directory '/build/ocaml-4.12.0/otherlibs/dynlink'
make[3]: *** [Makefile:35: allopt] Error 2
make[3]: Leaving directory '/build/ocaml-4.12.0/otherlibs'
make[2]: *** [Makefile:896: otherlibrariesopt] Error 2
make[2]: Leaving directory '/build/ocaml-4.12.0'
make[1]: *** [Makefile:219: opt.opt] Error 2
make[1]: Leaving directory '/build/ocaml-4.12.0'
make: *** [Makefile:275: world.opt] Error 2
builder for '/nix/store/g8789fj4qsrzbicamlw772ldk9mp7hms-ocaml-4.12.0.drv' failed with exit code 2
error: build of '/nix/store/g8789fj4qsrzbicamlw772ldk9mp7hms-ocaml-4.12.0.drv' failed

I’ll try to bisect it…

Metadata

Metadata

Assignees

No one assigned

    Labels

    0.kind: bugSomething is broken6.topic: ocamlOCaml is a general-purpose, high-level, multi-paradigm programming language.6.topic: staticStatic builds (e.g. pkgsStatic)
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions