yallop / ocaml-ctypes

Library for binding to C libraries using pure OCaml
MIT License
368 stars 95 forks source link

Not building for MirageOS due to unimplemented parts of stdlib #519

Open cfcs opened 7 years ago

cfcs commented 7 years ago

I currently cannot build Ctypes when targeting MirageOS. I do not have build logs at hand, but I wanted to log this for further discussion.

The errors I am receiving seem to refer to the usage of the Str module from the stdlib. A cursory search seems to hint that it is (mostly) used for regular expressions: https://github.com/ocamllabs/ocaml-ctypes/search?utf8=%E2%9C%93&q=Str&type=

Would it be possible to drop the reliance on Str and replace the affected code with something else without external dependencies - like Re? (see https://github.com/ocaml/ocaml-re )

I will try to do this replacement and determine if there are other things in the way.

yallop commented 7 years ago

Thanks for the report. The intention is for Strto be used only for code generation, not at runtime, but it's possible that the linking/packaging needs some adjustment.

cfcs commented 7 years ago

@yallop Oh, ok. That sounds sensible. I have no idea how to proceed with that, but I hope that the information below can help you figure out what's going on.

Installed version:

user@DEV.PUB.OCAML:~/ocaml/$ opam install ctypes
[ERROR] ocaml_version is not a valid variable.
[WARNING] Invalid variable ocaml_version in filter
[ERROR] ocaml_version is not a valid variable.
[WARNING] Invalid variable ocaml_version in filter
The following actions will be performed:
 - install   ctypes.0.11.4
=== 1 to install ===

=-=- Synchronizing package archives -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

=-=- Installing packages =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Building ctypes.0.11.4:
  make XEN=enable libffi.config
  make XEN=enable ctypes-base ctypes-stubs
  make XEN=enable ctypes-foreign
  make install XEN=enable
Installing ctypes.0.11.4.

And this is when building Thomas' https://github.com/talex5/qubes-mirage-skeleton after adding package "ctype"; to config.ml:

user@DEV.PUB.OCAML:~/ocaml/qubes-mirage-skeleton$ make
mirage build
ocamlfind ocamldep -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -modules main.ml > main.ml.depends
ocamlfind ocamldep -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -modules key_gen.ml > key_gen.ml.depends
ocamlfind ocamldep -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -modules unikernel.ml > unikernel.ml.depends
ocamlfind ocamldep -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -modules command.ml > command.ml.depends
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o command.cmo command.ml
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o key_gen.cmo key_gen.ml
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmo unikernel.ml
+ ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmo unikernel.ml
File "unikernel.ml", line 6, characters 0-11:
Warning 33: unused open Ctypes.
File "unikernel.ml", line 34, characters 12-19:
Warning 27: unused variable qubesDB.
File "unikernel.ml", line 34, characters 20-25:
Warning 27: unused variable stack.
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o main.cmo main.ml
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o command.cmx command.ml
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o key_gen.cmx key_gen.ml
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmx unikernel.ml
+ ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmx unikernel.ml
File "unikernel.ml", line 6, characters 0-11:
Warning 33: unused open Ctypes.
File "unikernel.ml", line 34, characters 12-19:
Warning 27: unused variable qubesDB.
File "unikernel.ml", line 34, characters 20-25:
Warning 27: unused variable stack.
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o main.cmx main.ml
ocamlfind ocamlopt -g -dontlink unix -dontlink str -dontlink num -dontlink threads -linkpkg -output-obj -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen command.cmx key_gen.cmx unikernel.cmx main.cmx -o main.native.o
+ ocamlfind ocamlopt -g -dontlink unix -dontlink str -dontlink num -dontlink threads -linkpkg -output-obj -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes.ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package functoria-runtime -package dns.mirage -package dns -package ctypes -predicates mirage_xen command.cmx key_gen.cmx unikernel.cmx main.cmx -o main.native.o
File "_none_", line 1:
Error: No implementations provided for the following modules:
         Str referenced from /home/user/.opam/4.04.0/lib/ctypes/ctypes.cmxa(Ctypes_path)
Command exited with code 2.
run ['ocamlbuild' '-use-ocamlfind' '-classic-display' '-tags'
     'predicate(mirage_xen),warn(A-4-41-42-44),debug,bin_annot,strict_sequence,principal,safe_string,color(always)'
     '-pkgs'
     'ctypes,dns,dns.mirage,functoria-runtime,lwt,mirage-clock-freestanding,mirage-logs,mirage-net-xen,mirage-qubes,mirage-qubes.ipv4,mirage-random,mirage-runtime,mirage-types,mirage-types-lwt,mirage-xen,tcpip,tcpip.arpv4,tcpip.ethif,tcpip.icmpv4,tcpip.stack-direct,tcpip.tcp,tcpip.udp'
     '-cflags' '-g' '-lflags'
     '-g,-dontlink,unix,-dontlink,str,-dontlink,num,-dontlink,threads'
     '-tag-line' '<static*.*>: warn(-32-34)' '-X' '_build-ukvm'
     'main.native.o']: exited with 10
Makefile:18: recipe for target 'build' failed
make: *** [build] Error 1

It appears to me like the combination of -dontlink str and -package ctypes generates this error:

ocamlfind ocamlopt -linkpkg -package ctypes -dontlink str a.ml

with a.ml containing:

open Ctypes

let () =
  let x = Ctypes.sizeof Ctypes.bool in
  Printf.printf "%d\n" x
cfcs commented 7 years ago

Looks like it's being linked here (when building Cstruct):

ocamlfind  opt -a -linkall -principal -short-paths -g  -package str -package bigarray -package bytes   -cclib -lctypes_stubs -o _build/ctypes.cmxa _build/src/ctypes/ctypes_path.cmx _build/src/ctypes/lDouble.cmx _build/src/ctypes/unsigned.cmx _build/src/ctypes/signed.cmx _build/src/ctypes/ctypes_ptr.cmx _build/src/ctypes/ctypes_bigarray_stubs.cmx _build/src/ctypes/complexL.cmx _build/src/ctypes/ctypes_primitive_types.cmx _build/src/ctypes/ctypes_primitives.cmx _build/src/ctypes/ctypes_roots_stubs.cmx _build/src/ctypes/ctypes_value_printing_stubs.cmx _build/src/ctypes/ctypes_memory_stubs.cmx _build/src/ctypes/ctypes_bigarray.cmx _build/src/ctypes/ctypes_static.cmx _build/src/ctypes/ctypes_std_view_stubs.cmx _build/src/ctypes/ctypes_structs.cmx _build/src/ctypes/ctypes_structs_computed.cmx _build/src/ctypes/ctypes_type_printing.cmx _build/src/ctypes/ctypes_memory.cmx _build/src/ctypes/ctypes_coerce.cmx _build/src/ctypes/ctypes_std_views.cmx _build/src/ctypes/ctypes_value_printing.cmx _build/src/ctypes/ctypes.cmx _build/src/ctypes/posixTypes.cmx -cclib -Wl,--no-as-needed

Removing that doesn't quite do the trick since some of the .cmx also include references to it:

~/ocaml/ocaml-ctypes$ find _build/ -name '*.cmx' -exec sh -c 'strings {} | fgrep Str' \; -print
&String
#Str
7camlString__concat_1289
_build/src/ctypes/ctypes_path.cmx
#Str
_build/src/cstubs/cstubs_structs.cmx
&String
_build/src/cstubs/cstubs_generate_c.cmx
7camlString__concat_1289
_build/src/cstubs/cstubs_generate_ml.cmx
cfcs commented 7 years ago

By removing seemingly unneeded references to the Str module I end up with the modules referencing the module:

./src/ctypes/ctypes_path.ml
./src/discover/commands.ml
./src/discover/discover.ml
./src/cstubs/cstubs_structs.ml
./src/configure/extract_from_c.ml

and in these auxiliary files:

./META
./Makefile

I suspect that the offenders may be:

./src/ctypes/ctypes_path.ml
./src/cstubs/cstubs_structs.ml
cfcs commented 7 years ago

Hm, I got sucked into this and ended up with this PR: https://github.com/ocamllabs/ocaml-ctypes/pull/520

The build seems to work for me, but the tests are broken. Comments appreciated!

yallop commented 7 years ago

Thanks for the clear report, and for the PR, @cfcs.

If possible I'd like to address this without introducing a dependency on re, by ensuring that no runtime code (as opposed to code used to generate C and OCaml) depends on str. PRs #526 and #527 and issue #528 are all steps in that direction.

cfcs commented 7 years ago

That sounds great! :) I agree that sounds sensible. I'll leave this open for you to decide the course, feel free to pick parts from here or close it. (I still think that using re instead of Str.regexp in the places where it can't be completely avoided would be nice).

cfcs commented 6 years ago

Hmm, so the Str dependency still breaks my MirageOS build. I tried to opam install ctypes-foreign, but it doesn't seem to be able to find Ctypes.FOREIGN anywhere.

Do you know what the present status of these PRs are - are they released in 12.1 (the newest Ctypes version available in my opam); what is the best practice way to build something without a runtime dependency on Str?

yallop commented 6 years ago

The Str dependency is still there, although it's on its way out. MirageOS linking should be fixed when #528 is closed.

cfcs commented 6 years ago

@yallop Thank you for the clarification, and for your work on this, I really appreciate it!

yallop commented 6 years ago

@cfcs: I think this is fixed in master now. Could you try pinning to see whether it works for you? You can pin the master branch like this:

opam pin add --dev ctypes

Your package should then have a findlib/ocamlfind dependency on ctypes, not on ctypes.stubs, and the Str dependency should be gone.

cfcs commented 6 years ago

That seemed to work!

I'm now left with a handful of new errors, but I suspect that may be my own fault... (I changed ctypes.stubs to ctypes in META)

+ ocamlfind ocamlopt -g -dontlink unix -dontlink str -dontlink num -dontlink threads -linkpkg -output-obj -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package sodium -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -predicates mirage_xen command.cmx key_gen.cmx unikernel.cmx main.cmx -o main.native.o
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
_build/main.native.o: In function `camlLDouble__fun_1371':
(.text+0x680ea): undefined reference to `ctypes_ldouble_classify'
_build/main.native.o: In function `camlLDouble__fun_1373':
(.text+0x6811a): undefined reference to `ctypes_ldouble_modf'
_build/main.native.o: In function `camlLDouble__fun_1375':
(.text+0x6814d): undefined reference to `ctypes_ldouble_ldexp'
_build/main.native.o: In function `camlLDouble__fun_1377':
(.text+0x6817a): undefined reference to `ctypes_ldouble_frexp'
_build/main.native.o: In function `camlLDouble__fun_1379':
(.text+0x681ad): undefined reference to `ctypes_ldouble_copysignl'
_build/main.native.o: In function `camlLDouble__fun_1381':
(.text+0x681dd): undefined reference to `ctypes_ldouble_remainderl'
_build/main.native.o: In function `camlLDouble__fun_1383':
(.text+0x6820a): undefined reference to `ctypes_ldouble_fabsl'
_build/main.native.o: In function `camlLDouble__fun_1385':
(.text+0x6823a): undefined reference to `ctypes_ldouble_floorl'
_build/main.native.o: In function `camlLDouble__fun_1387':
(.text+0x6826a): undefined reference to `ctypes_ldouble_ceill'
_build/main.native.o: In function `camlLDouble__fun_1389':
(.text+0x6829a): undefined reference to `ctypes_ldouble_atanhl'
_build/main.native.o: In function `camlLDouble__fun_1391':
(.text+0x682ca): undefined reference to `ctypes_ldouble_asinhl'
_build/main.native.o: In function `camlLDouble__fun_1393':
(.text+0x682fa): undefined reference to `ctypes_ldouble_acoshl'
_build/main.native.o: In function `camlLDouble__fun_1395':
(.text+0x6832a): undefined reference to `ctypes_ldouble_tanhl'
_build/main.native.o: In function `camlLDouble__fun_1397':
(.text+0x6835a): undefined reference to `ctypes_ldouble_sinhl'
_build/main.native.o: In function `camlLDouble__fun_1399':
(.text+0x6838a): undefined reference to `ctypes_ldouble_coshl'
_build/main.native.o: In function `camlLDouble__fun_1401':
(.text+0x683bd): undefined reference to `ctypes_ldouble_hypotl'
_build/main.native.o: In function `camlLDouble__fun_1403':
(.text+0x683ed): undefined reference to `ctypes_ldouble_atan2l'
_build/main.native.o: In function `camlLDouble__fun_1405':
(.text+0x6841a): undefined reference to `ctypes_ldouble_atanl'
_build/main.native.o: In function `camlLDouble__fun_1407':
(.text+0x6844a): undefined reference to `ctypes_ldouble_asinl'
_build/main.native.o: In function `camlLDouble__fun_1409':
(.text+0x6847a): undefined reference to `ctypes_ldouble_acosl'
_build/main.native.o: In function `camlLDouble__fun_1411':
(.text+0x684aa): undefined reference to `ctypes_ldouble_tanl'
_build/main.native.o: In function `camlLDouble__fun_1413':
(.text+0x684da): undefined reference to `ctypes_ldouble_sinl'
_build/main.native.o: In function `camlLDouble__fun_1415':
(.text+0x6850a): undefined reference to `ctypes_ldouble_cosl'
_build/main.native.o: In function `camlLDouble__fun_1417':
(.text+0x6853a): undefined reference to `ctypes_ldouble_log1pl'
_build/main.native.o: In function `camlLDouble__fun_1419':
(.text+0x6856a): undefined reference to `ctypes_ldouble_expm1l'
_build/main.native.o: In function `camlLDouble__fun_1421':
(.text+0x6859a): undefined reference to `ctypes_ldouble_log10l'
_build/main.native.o: In function `camlLDouble__fun_1423':
(.text+0x685ca): undefined reference to `ctypes_ldouble_logl'
_build/main.native.o: In function `camlLDouble__fun_1425':
(.text+0x685fa): undefined reference to `ctypes_ldouble_expl'
_build/main.native.o: In function `camlLDouble__fun_1427':
(.text+0x6862a): undefined reference to `ctypes_ldouble_sqrtl'
_build/main.native.o: In function `camlLDouble__fun_1429':
(.text+0x6865d): undefined reference to `ctypes_ldouble_powl'
_build/main.native.o: In function `camlLDouble__fun_1431':
(.text+0x6868a): undefined reference to `ctypes_ldouble_neg'
_build/main.native.o: In function `camlLDouble__fun_1433':
(.text+0x686bd): undefined reference to `ctypes_ldouble_div'
_build/main.native.o: In function `camlLDouble__fun_1435':
(.text+0x686ed): undefined reference to `ctypes_ldouble_mul'
_build/main.native.o: In function `camlLDouble__fun_1437':
(.text+0x6871d): undefined reference to `ctypes_ldouble_sub'
_build/main.native.o: In function `camlLDouble__fun_1439':
(.text+0x6874d): undefined reference to `ctypes_ldouble_add'
_build/main.native.o: In function `camlLDouble__fun_1441':
(.text+0x6877a): undefined reference to `ctypes_ldouble_of_string'
_build/main.native.o: In function `camlLDouble__fun_1443':
(.text+0x687aa): undefined reference to `ctypes_ldouble_of_int'
_build/main.native.o: In function `camlLDouble__fun_1445':
(.text+0x687da): undefined reference to `ctypes_ldouble_to_int'
_build/main.native.o: In function `camlLDouble__fun_1447':
(.text+0x6880a): undefined reference to `ctypes_ldouble_of_float'
_build/main.native.o: In function `camlLDouble__fun_1449':
(.text+0x6883a): undefined reference to `ctypes_ldouble_to_float'
_build/main.native.o: In function `camlLDouble__to_string_inner_1451':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:19: undefined reference to `ctypes_ldouble_format'
_build/main.native.o: In function `camlLDouble__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:9: undefined reference to `ldouble_init'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:62: undefined reference to `ctypes_ldouble_min'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:64: undefined reference to `ctypes_ldouble_max'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:66: undefined reference to `ctypes_ldouble_epsilon'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:68: undefined reference to `ctypes_ldouble_nan'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:70: undefined reference to `ctypes_ldouble_inf'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:72: undefined reference to `ctypes_ldouble_ninf'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:74: undefined reference to `ctypes_ldouble_of_int'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:75: undefined reference to `ctypes_ldouble_of_int'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:78: undefined reference to `ctypes_ldouble_size'
_build/main.native.o: In function `camlComplexL__fun_1355':
(.text+0x68cad): undefined reference to `ctypes_ldouble_complex_cpowl'
_build/main.native.o: In function `camlComplexL__fun_1357':
(.text+0x68cda): undefined reference to `ctypes_ldouble_complex_clogl'
_build/main.native.o: In function `camlComplexL__fun_1359':
(.text+0x68d0a): undefined reference to `ctypes_ldouble_complex_cexpl'
_build/main.native.o: In function `camlComplexL__fun_1361':
(.text+0x68d3a): undefined reference to `ctypes_ldouble_complex_cargl'
_build/main.native.o: In function `camlComplexL__fun_1363':
(.text+0x68d6a): undefined reference to `ctypes_ldouble_complex_csqrtl'
_build/main.native.o: In function `camlComplexL__fun_1365':
(.text+0x68d9d): undefined reference to `ctypes_ldouble_complex_div'
_build/main.native.o: In function `camlComplexL__fun_1367':
(.text+0x68dcd): undefined reference to `ctypes_ldouble_complex_mul'
_build/main.native.o: In function `camlComplexL__fun_1369':
(.text+0x68dfd): undefined reference to `ctypes_ldouble_complex_sub'
_build/main.native.o: In function `camlComplexL__fun_1371':
(.text+0x68e2d): undefined reference to `ctypes_ldouble_complex_add'
_build/main.native.o: In function `camlComplexL__fun_1373':
(.text+0x68e5a): undefined reference to `ctypes_ldouble_complex_conjl'
_build/main.native.o: In function `camlComplexL__fun_1375':
(.text+0x68e8a): undefined reference to `ctypes_ldouble_complex_neg'
_build/main.native.o: In function `camlComplexL__fun_1377':
(.text+0x68eba): undefined reference to `ctypes_ldouble_complex_imag'
_build/main.native.o: In function `camlComplexL__fun_1379':
(.text+0x68eea): undefined reference to `ctypes_ldouble_complex_real'
_build/main.native.o: In function `camlComplexL__fun_1381':
(.text+0x68f1d): undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlComplexL__of_complex_1254':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:8: undefined reference to `ctypes_ldouble_of_float'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:8: undefined reference to `ctypes_ldouble_of_float'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:8: undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlComplexL__to_complex_1275':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_complex_imag'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_to_float'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_complex_real'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_to_float'
_build/main.native.o: In function `camlComplexL__norm2_1277':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:12: undefined reference to `ctypes_ldouble_complex_imag'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:12: undefined reference to `ctypes_ldouble_complex_real'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:13: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:13: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:13: undefined reference to `ctypes_ldouble_add'
_build/main.native.o: In function `camlComplexL__norm_1281':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_complex_real'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_fabsl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_complex_imag'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_fabsl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_div'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_add'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_sqrtl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_div'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_add'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_sqrtl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_mul'
_build/main.native.o: In function `camlComplexL__polar_1287':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_sinl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_cosl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlComplexL__inv_1299':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:37: undefined reference to `ctypes_ldouble_complex_div'
_build/main.native.o: In function `camlComplexL__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:27: undefined reference to `ctypes_ldouble_complex_make'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:28: undefined reference to `ctypes_ldouble_complex_make'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:29: undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlCtypes_bigarray__unsafe_address_1540':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:127: undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlCtypes_bigarray__view_1645':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:132: undefined reference to `ctypes_bigarray_view'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:133: undefined reference to `ctypes_bigarray_view'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:134: undefined reference to `ctypes_bigarray_view'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:135: undefined reference to `ctypes_bigarray_view'
_build/main.native.o: In function `camlCtypes_bigarray__fun_1911':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:138: undefined reference to `ctypes_use'
_build/main.native.o: In function `camlCtypes_memory__fun_12062':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:21: undefined reference to `ctypes_read'
_build/main.native.o: In function `camlCtypes_memory__fun_12056':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:21: undefined reference to `ctypes_read'
_build/main.native.o: In function `camlCtypes_memory__fun_12071':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:26: undefined reference to `ctypes_allocate'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:27: undefined reference to `ctypes_block_address'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:28: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__fun_12065':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:31: undefined reference to `ctypes_read_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12068':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:33: undefined reference to `ctypes_read_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12081':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:47: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__fun_12153':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:51: undefined reference to `ctypes_write'
_build/main.native.o: In function `camlCtypes_memory__fun_12147':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:51: undefined reference to `ctypes_write'
_build/main.native.o: In function `camlCtypes_memory__fun_12158':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:53: undefined reference to `ctypes_write_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12161':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:55: undefined reference to `ctypes_write_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12187':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:64: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__fun_12190':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:127: undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlCtypes_memory__fun_12190':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:71: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__allocate_n_3537':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:135: undefined reference to `ctypes_allocate'
_build/main.native.o: In function `camlCtypes_memory__package_3543':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:129: undefined reference to `ctypes_block_address'
_build/main.native.o: In function `camlCtypes_memory__copy_4613':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:206: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory___bigarray_start_6877':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:127: undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlCtypes_memory__fun_12329':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:384: undefined reference to `ctypes_string_of_array'
_build/main.native.o: In function `camlCtypes_memory__create_11080':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:404: undefined reference to `ctypes_caml_roots_create'
_build/main.native.o: In function `camlCtypes_memory__get_11086':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:407: undefined reference to `ctypes_caml_roots_get'
_build/main.native.o: In function `camlCtypes_memory__set_11088':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:410: undefined reference to `ctypes_caml_roots_set'
_build/main.native.o: In function `camlCtypes_memory__release_11091':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:413: undefined reference to `ctypes_caml_roots_release'
_build/main.native.o: In function `camlCtypes_std_views__string_of_char_ptr_1199':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:9: undefined reference to `ctypes_string_of_cstring'
_build/main.native.o: In function `camlCtypes_std_views__char_ptr_of_string_1352':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:12: undefined reference to `ctypes_cstring_of_string'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:14: undefined reference to `ctypes_block_address'
_build/main.native.o: In function `camlCtypes_std_views__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:91: undefined reference to `integers_intptr_t_size'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:93: undefined reference to `integers_uintptr_t_size'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:98: undefined reference to `integers_ptrdiff_t_size'
_build/main.native.o: In function `camlCtypes_value_printing__format_1383':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_value_printing.ml:15: undefined reference to `ctypes_string_of_prim'
_build/main.native.o: In function `camlCtypes_value_printing__format_ptr_1388':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_value_printing.ml:85: undefined reference to `ctypes_string_of_pointer'
_build/main.native.o: In function `camlCtypes_value_printing__format_funptr_1389':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_value_printing.ml:88: undefined reference to `ctypes_string_of_pointer'
_build/main.native.o: In function `camlCstubs_internals__make_structured_1481':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/cstubs_internals.ml:19: undefined reference to `ctypes_block_address'
_build/main.native.o: In function `camlCstubs_internals__uint8_of_int64_1818':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlCstubs_internals__uint16_of_int64_2142':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlCstubs_internals__uint32_of_int64_2183':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlCstubs_internals__int64_of_uint32_2224':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlCstubs_internals__use_value_2278':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/cstubs_internals.ml:89: undefined reference to `ctypes_use'
_build/main.native.o: In function `camlPosixTypes__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:78: undefined reference to `ctypes_typeof_clock_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:79: undefined reference to `ctypes_typeof_dev_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:80: undefined reference to `ctypes_typeof_ino_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:81: undefined reference to `ctypes_typeof_mode_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:82: undefined reference to `ctypes_typeof_nlink_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:83: undefined reference to `ctypes_typeof_off_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:84: undefined reference to `ctypes_typeof_pid_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:90: undefined reference to `ctypes_typeof_ssize_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:91: undefined reference to `ctypes_typeof_time_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:92: undefined reference to `ctypes_typeof_useconds_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:124: undefined reference to `ctypes_alignmentof_sigset_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:124: undefined reference to `ctypes_sizeof_sigset_t'
_build/main.native.o: In function `camlUnsigned__fun_2514':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2518':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2522':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2540':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2544':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2548':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2646':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:168: undefined reference to `integers_uint32_of_int32'
_build/main.native.o: In function `camlUnsigned__fun_2648':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:169: undefined reference to `integers_int32_of_uint32'
_build/main.native.o: In function `camlUnsigned__fun_2550':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:175: undefined reference to `integers_uint32_add'
_build/main.native.o: In function `camlUnsigned__fun_2582':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:175: undefined reference to `integers_uint32_add'
_build/main.native.o: In function `camlUnsigned__fun_2614':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:175: undefined reference to `integers_uint32_add'
_build/main.native.o: In function `camlUnsigned__fun_2552':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:176: undefined reference to `integers_uint32_sub'
_build/main.native.o: In function `camlUnsigned__fun_2584':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:176: undefined reference to `integers_uint32_sub'
_build/main.native.o: In function `camlUnsigned__fun_2616':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:176: undefined reference to `integers_uint32_sub'
_build/main.native.o: In function `camlUnsigned__fun_2554':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:177: undefined reference to `integers_uint32_mul'
_build/main.native.o: In function `camlUnsigned__fun_2586':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:177: undefined reference to `integers_uint32_mul'
_build/main.native.o: In function `camlUnsigned__fun_2618':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:177: undefined reference to `integers_uint32_mul'
_build/main.native.o: In function `camlUnsigned__fun_2556':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:178: undefined reference to `integers_uint32_div'
_build/main.native.o: In function `camlUnsigned__fun_2588':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:178: undefined reference to `integers_uint32_div'
_build/main.native.o: In function `camlUnsigned__fun_2620':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:178: undefined reference to `integers_uint32_div'
_build/main.native.o: In function `camlUnsigned__fun_2558':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:179: undefined reference to `integers_uint32_rem'
_build/main.native.o: In function `camlUnsigned__fun_2590':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:179: undefined reference to `integers_uint32_rem'
_build/main.native.o: In function `camlUnsigned__fun_2622':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:179: undefined reference to `integers_uint32_rem'
_build/main.native.o: In function `camlUnsigned__fun_2560':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:180: undefined reference to `integers_uint32_logand'
_build/main.native.o: In function `camlUnsigned__fun_2592':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:180: undefined reference to `integers_uint32_logand'
_build/main.native.o: In function `camlUnsigned__fun_2624':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:180: undefined reference to `integers_uint32_logand'
_build/main.native.o: In function `camlUnsigned__fun_2562':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:181: undefined reference to `integers_uint32_logor'
_build/main.native.o: In function `camlUnsigned__fun_2594':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:181: undefined reference to `integers_uint32_logor'
_build/main.native.o: In function `camlUnsigned__fun_2626':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:181: undefined reference to `integers_uint32_logor'
_build/main.native.o: In function `camlUnsigned__fun_2564':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:182: undefined reference to `integers_uint32_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2596':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:182: undefined reference to `integers_uint32_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2628':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:182: undefined reference to `integers_uint32_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2566':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:183: undefined reference to `integers_uint32_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2598':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:183: undefined reference to `integers_uint32_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2630':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:183: undefined reference to `integers_uint32_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2568':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:184: undefined reference to `integers_uint32_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2600':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:184: undefined reference to `integers_uint32_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2632':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:184: undefined reference to `integers_uint32_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2570':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:185: undefined reference to `integers_uint32_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2602':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:185: undefined reference to `integers_uint32_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2634':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:185: undefined reference to `integers_uint32_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2572':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:186: undefined reference to `integers_uint32_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2604':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:186: undefined reference to `integers_uint32_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2636':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:186: undefined reference to `integers_uint32_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2574':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:187: undefined reference to `integers_uint32_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2606':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:187: undefined reference to `integers_uint32_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2638':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:187: undefined reference to `integers_uint32_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2576':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:188: undefined reference to `integers_uint32_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2608':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:188: undefined reference to `integers_uint32_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2640':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:188: undefined reference to `integers_uint32_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2578':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2610':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2642':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2580':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2612':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2644':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2752':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:204: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2742':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:204: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2754':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:205: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2744':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:205: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2650':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:211: undefined reference to `integers_uint64_add'
_build/main.native.o: In function `camlUnsigned__fun_2682':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:211: undefined reference to `integers_uint64_add'
_build/main.native.o: In function `camlUnsigned__fun_2714':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:211: undefined reference to `integers_uint64_add'
_build/main.native.o: In function `camlUnsigned__fun_2652':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:212: undefined reference to `integers_uint64_sub'
_build/main.native.o: In function `camlUnsigned__fun_2684':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:212: undefined reference to `integers_uint64_sub'
_build/main.native.o: In function `camlUnsigned__fun_2716':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:212: undefined reference to `integers_uint64_sub'
_build/main.native.o: In function `camlUnsigned__fun_2654':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:213: undefined reference to `integers_uint64_mul'
_build/main.native.o: In function `camlUnsigned__fun_2686':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:213: undefined reference to `integers_uint64_mul'
_build/main.native.o: In function `camlUnsigned__fun_2718':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:213: undefined reference to `integers_uint64_mul'
_build/main.native.o: In function `camlUnsigned__fun_2656':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:214: undefined reference to `integers_uint64_div'
_build/main.native.o: In function `camlUnsigned__fun_2688':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:214: undefined reference to `integers_uint64_div'
_build/main.native.o: In function `camlUnsigned__fun_2720':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:214: undefined reference to `integers_uint64_div'
_build/main.native.o: In function `camlUnsigned__fun_2658':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:215: undefined reference to `integers_uint64_rem'
_build/main.native.o: In function `camlUnsigned__fun_2690':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:215: undefined reference to `integers_uint64_rem'
_build/main.native.o: In function `camlUnsigned__fun_2722':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:215: undefined reference to `integers_uint64_rem'
_build/main.native.o: In function `camlUnsigned__fun_2660':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:216: undefined reference to `integers_uint64_logand'
_build/main.native.o: In function `camlUnsigned__fun_2692':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:216: undefined reference to `integers_uint64_logand'
_build/main.native.o: In function `camlUnsigned__fun_2724':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:216: undefined reference to `integers_uint64_logand'
_build/main.native.o: In function `camlUnsigned__fun_2662':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:217: undefined reference to `integers_uint64_logor'
_build/main.native.o: In function `camlUnsigned__fun_2694':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:217: undefined reference to `integers_uint64_logor'
_build/main.native.o: In function `camlUnsigned__fun_2726':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:217: undefined reference to `integers_uint64_logor'
_build/main.native.o: In function `camlUnsigned__fun_2664':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:218: undefined reference to `integers_uint64_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2696':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:218: undefined reference to `integers_uint64_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2728':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:218: undefined reference to `integers_uint64_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2666':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:219: undefined reference to `integers_uint64_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2698':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:219: undefined reference to `integers_uint64_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2730':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:219: undefined reference to `integers_uint64_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2668':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:220: undefined reference to `integers_uint64_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2700':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:220: undefined reference to `integers_uint64_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2732':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:220: undefined reference to `integers_uint64_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2670':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:221: undefined reference to `integers_uint64_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2702':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:221: undefined reference to `integers_uint64_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2734':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:221: undefined reference to `integers_uint64_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2672':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:222: undefined reference to `integers_uint64_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2704':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:222: undefined reference to `integers_uint64_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2736':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:222: undefined reference to `integers_uint64_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2674':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:223: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2706':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:223: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2676':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:224: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2708':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:224: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2678':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:225: undefined reference to `integers_uint64_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2710':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:225: undefined reference to `integers_uint64_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2738':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:225: undefined reference to `integers_uint64_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2680':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:226: undefined reference to `integers_uint64_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2712':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:226: undefined reference to `integers_uint64_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2740':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:226: undefined reference to `integers_uint64_to_string'
_build/main.native.o: In function `camlUnsigned__entry':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:9: undefined reference to `integers_unsigned_init'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:192: undefined reference to `integers_uint32_max'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:228: undefined reference to `integers_uint64_max'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:250: undefined reference to `integers_size_t_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:252: undefined reference to `integers_ushort_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:253: undefined reference to `integers_uint_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:254: undefined reference to `integers_ulong_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:255: undefined reference to `integers_ulonglong_size'
_build/main.native.o: In function `camlSigned__entry':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/signed.ml:127: undefined reference to `integers_uint_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/signed.ml:128: undefined reference to `integers_ulong_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/signed.ml:129: undefined reference to `integers_ulonglong_size'
_build/main.native.o: In function `camlCtypes_roots_stubs__gc_roots':
(.data+0x65870): undefined reference to `ctypes_caml_roots_release'
(.data+0x65878): undefined reference to `ctypes_caml_roots_get'
(.data+0x65880): undefined reference to `ctypes_caml_roots_set'
(.data+0x65888): undefined reference to `ctypes_caml_roots_create'
_build/main.native.o: In function `camlLDouble__41':
:(.data+0x65e98): undefined reference to `ctypes_ldouble_size'
:(.data+0x65ea0): undefined reference to `ctypes_ldouble_ninf'
:(.data+0x65ea8): undefined reference to `ctypes_ldouble_inf'
:(.data+0x65eb0): undefined reference to `ctypes_ldouble_nan'
:(.data+0x65eb8): undefined reference to `ctypes_ldouble_epsilon'
:(.data+0x65ec0): undefined reference to `ctypes_ldouble_max'
:(.data+0x65ec8): undefined reference to `ctypes_ldouble_min'
:(.data+0x65ed0): undefined reference to `ctypes_ldouble_classify'
:(.data+0x65ed8): undefined reference to `ctypes_ldouble_modf'
:(.data+0x65ee0): undefined reference to `ctypes_ldouble_ldexp'
:(.data+0x65ee8): undefined reference to `ctypes_ldouble_frexp'
:(.data+0x65ef0): undefined reference to `ctypes_ldouble_copysignl'
:(.data+0x65ef8): undefined reference to `ctypes_ldouble_remainderl'
:(.data+0x65f00): undefined reference to `ctypes_ldouble_fabsl'
:(.data+0x65f08): undefined reference to `ctypes_ldouble_floorl'
:(.data+0x65f10): undefined reference to `ctypes_ldouble_ceill'
:(.data+0x65f18): undefined reference to `ctypes_ldouble_atanhl'
:(.data+0x65f20): undefined reference to `ctypes_ldouble_asinhl'
:(.data+0x65f28): undefined reference to `ctypes_ldouble_acoshl'
:(.data+0x65f30): undefined reference to `ctypes_ldouble_tanhl'
:(.data+0x65f38): undefined reference to `ctypes_ldouble_sinhl'
:(.data+0x65f40): undefined reference to `ctypes_ldouble_coshl'
:(.data+0x65f48): undefined reference to `ctypes_ldouble_hypotl'
:(.data+0x65f50): undefined reference to `ctypes_ldouble_atan2l'
:(.data+0x65f58): undefined reference to `ctypes_ldouble_atanl'
:(.data+0x65f60): undefined reference to `ctypes_ldouble_asinl'
:(.data+0x65f68): undefined reference to `ctypes_ldouble_acosl'
:(.data+0x65f70): undefined reference to `ctypes_ldouble_tanl'
:(.data+0x65f78): undefined reference to `ctypes_ldouble_sinl'
:(.data+0x65f80): undefined reference to `ctypes_ldouble_cosl'
:(.data+0x65f88): undefined reference to `ctypes_ldouble_log1pl'
:(.data+0x65f90): undefined reference to `ctypes_ldouble_expm1l'
:(.data+0x65f98): undefined reference to `ctypes_ldouble_log10l'
:(.data+0x65fa0): undefined reference to `ctypes_ldouble_logl'
:(.data+0x65fa8): undefined reference to `ctypes_ldouble_expl'
:(.data+0x65fb0): undefined reference to `ctypes_ldouble_sqrtl'
:(.data+0x65fb8): undefined reference to `ctypes_ldouble_powl'
:(.data+0x65fc0): undefined reference to `ctypes_ldouble_neg'
:(.data+0x65fc8): undefined reference to `ctypes_ldouble_div'
:(.data+0x65fd0): undefined reference to `ctypes_ldouble_mul'
:(.data+0x65fd8): undefined reference to `ctypes_ldouble_sub'
:(.data+0x65fe0): undefined reference to `ctypes_ldouble_add'
:(.data+0x65fe8): undefined reference to `ctypes_ldouble_of_string'
:(.data+0x65ff0): undefined reference to `ctypes_ldouble_format'
:(.data+0x65ff8): undefined reference to `ctypes_ldouble_of_int'
:(.data+0x66000): undefined reference to `ctypes_ldouble_to_int'
:(.data+0x66008): undefined reference to `ctypes_ldouble_of_float'
:(.data+0x66010): undefined reference to `ctypes_ldouble_to_float'
:(.data+0x66018): undefined reference to `ldouble_init'
_build/main.native.o: In function `camlCtypes_bigarray_stubs__gc_roots':
(.data+0x66490): undefined reference to `ctypes_bigarray_view'
(.data+0x66498): undefined reference to `ctypes_bigarray_view'
(.data+0x664a0): undefined reference to `ctypes_bigarray_view'
(.data+0x664a8): undefined reference to `ctypes_bigarray_view'
(.data+0x664b0): undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlComplexL__20':
:(.data+0x667b0): undefined reference to `ctypes_ldouble_complex_cpowl'
:(.data+0x667b8): undefined reference to `ctypes_ldouble_complex_clogl'
:(.data+0x667c0): undefined reference to `ctypes_ldouble_complex_cexpl'
:(.data+0x667c8): undefined reference to `ctypes_ldouble_complex_cargl'
:(.data+0x667d0): undefined reference to `ctypes_ldouble_complex_csqrtl'
:(.data+0x667d8): undefined reference to `ctypes_ldouble_complex_div'
:(.data+0x667e0): undefined reference to `ctypes_ldouble_complex_mul'
:(.data+0x667e8): undefined reference to `ctypes_ldouble_complex_sub'
:(.data+0x667f0): undefined reference to `ctypes_ldouble_complex_add'
:(.data+0x667f8): undefined reference to `ctypes_ldouble_complex_conjl'
:(.data+0x66800): undefined reference to `ctypes_ldouble_complex_neg'
:(.data+0x66808): undefined reference to `ctypes_ldouble_complex_imag'
:(.data+0x66810): undefined reference to `ctypes_ldouble_complex_real'
:(.data+0x66818): undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlCtypes_value_printing_stubs__gc_roots':
(.data+0x67418): undefined reference to `ctypes_string_of_pointer'
(.data+0x67420): undefined reference to `ctypes_string_of_prim'
_build/main.native.o: In function `camlCtypes_memory_stubs__1':
(.data+0x67460): undefined reference to `ctypes_use'
(.data+0x67468): undefined reference to `ctypes_string_of_array'
(.data+0x67470): undefined reference to `ctypes_memcpy'
(.data+0x67478): undefined reference to `ctypes_write_pointer'
(.data+0x67480): undefined reference to `ctypes_read_pointer'
(.data+0x67488): undefined reference to `ctypes_write'
(.data+0x67490): undefined reference to `ctypes_read'
(.data+0x67498): undefined reference to `ctypes_block_address'
(.data+0x674a0): undefined reference to `ctypes_allocate'
_build/main.native.o: In function `camlCtypes_std_view_stubs__gc_roots':
(.data+0x695c0): undefined reference to `integers_ptrdiff_t_size'
(.data+0x695c8): undefined reference to `integers_intptr_t_size'
(.data+0x695d0): undefined reference to `integers_uintptr_t_size'
(.data+0x695d8): undefined reference to `ctypes_cstring_of_string'
(.data+0x695e0): undefined reference to `ctypes_string_of_cstring'
_build/main.native.o: In function `camlPosixTypes__32':
:(.data+0x726e0): undefined reference to `ctypes_alignmentof_sigset_t'
:(.data+0x726e8): undefined reference to `ctypes_sizeof_sigset_t'
:(.data+0x726f0): undefined reference to `ctypes_typeof_useconds_t'
:(.data+0x726f8): undefined reference to `ctypes_typeof_time_t'
:(.data+0x72700): undefined reference to `ctypes_typeof_ssize_t'
:(.data+0x72708): undefined reference to `ctypes_typeof_pid_t'
:(.data+0x72710): undefined reference to `ctypes_typeof_off_t'
:(.data+0x72718): undefined reference to `ctypes_typeof_nlink_t'
:(.data+0x72720): undefined reference to `ctypes_typeof_mode_t'
:(.data+0x72728): undefined reference to `ctypes_typeof_ino_t'
:(.data+0x72730): undefined reference to `ctypes_typeof_dev_t'
:(.data+0x72738): undefined reference to `ctypes_typeof_clock_t'
_build/main.native.o: In function `camlUnsigned__140':
:(.data+0x74180): undefined reference to `integers_ulonglong_size'
:(.data+0x74188): undefined reference to `integers_ulong_size'
:(.data+0x74190): undefined reference to `integers_uint_size'
:(.data+0x74198): undefined reference to `integers_ushort_size'
:(.data+0x741a0): undefined reference to `integers_size_t_size'
:(.data+0x741a8): undefined reference to `integers_uint64_max'
:(.data+0x741b0): undefined reference to `integers_uint64_to_string'
:(.data+0x741b8): undefined reference to `integers_uint64_of_string'
:(.data+0x741c0): undefined reference to `integers_uint64_to_int64'
:(.data+0x741c8): undefined reference to `integers_uint64_of_int64'
:(.data+0x741d0): undefined reference to `integers_uint64_to_int'
:(.data+0x741d8): undefined reference to `integers_uint64_of_int'
:(.data+0x741e0): undefined reference to `integers_uint64_shift_right'
:(.data+0x741e8): undefined reference to `integers_uint64_shift_left'
:(.data+0x741f0): undefined reference to `integers_uint64_logxor'
:(.data+0x741f8): undefined reference to `integers_uint64_logor'
:(.data+0x74200): undefined reference to `integers_uint64_logand'
:(.data+0x74208): undefined reference to `integers_uint64_rem'
:(.data+0x74210): undefined reference to `integers_uint64_div'
:(.data+0x74218): undefined reference to `integers_uint64_mul'
:(.data+0x74220): undefined reference to `integers_uint64_sub'
:(.data+0x74228): undefined reference to `integers_uint64_add'
:(.data+0x74230): undefined reference to `integers_int32_of_uint32'
:(.data+0x74238): undefined reference to `integers_uint32_of_int32'
:(.data+0x74240): undefined reference to `integers_uint32_max'
:(.data+0x74248): undefined reference to `integers_uint32_to_string'
:(.data+0x74250): undefined reference to `integers_uint32_of_string'
:(.data+0x74258): undefined reference to `integers_uint32_to_int64'
:(.data+0x74260): undefined reference to `integers_uint32_of_int64'
:(.data+0x74268): undefined reference to `integers_uint32_to_int'
:(.data+0x74270): undefined reference to `integers_uint32_of_int'
:(.data+0x74278): undefined reference to `integers_uint32_shift_right'
:(.data+0x74280): undefined reference to `integers_uint32_shift_left'
:(.data+0x74288): undefined reference to `integers_uint32_logxor'
:(.data+0x74290): undefined reference to `integers_uint32_logor'
:(.data+0x74298): undefined reference to `integers_uint32_logand'
:(.data+0x742a0): undefined reference to `integers_uint32_rem'
:(.data+0x742a8): undefined reference to `integers_uint32_div'
:(.data+0x742b0): undefined reference to `integers_uint32_mul'
:(.data+0x742b8): undefined reference to `integers_uint32_sub'
:(.data+0x742c0): undefined reference to `integers_uint32_add'
:(.data+0x742c8): undefined reference to `integers_uint16_of_string'
:(.data+0x742d0): undefined reference to `integers_uint8_of_string'
:(.data+0x742d8): undefined reference to `integers_unsigned_init'
_build/main.native.o: In function `camlSigned__85':
:(.data+0x76588): undefined reference to `integers_ulonglong_size'
:(.data+0x76590): undefined reference to `integers_ulong_size'
:(.data+0x76598): undefined reference to `integers_uint_size'
run ['ld' '-d' '-static' '-nostdlib' '_build/main.native.o'
     '-L/home/user/.opam/4.04.2+fPIC/lib/io-page-xen' '-lio_page_xen_stubs'
     '-L/home/user/.opam/4.04.2+fPIC/lib/tcpip'
     '-L/home/user/.opam/4.04.2+fPIC/lib/tcpip/xen' '-ltcpip_xen_stubs'
     '-L/home/user/.opam/4.04.2+fPIC/lib'
     '-L/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/minios-xen'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen/libxencamlbindings.a'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen-ocaml/libxenasmrun.a'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen-ocaml/libxenotherlibs.a'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen-posix/libxenposix.a'
     '-lopenlibm' '-lminios'
     '-T/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/minios-xen/libminios.lds'
     '-m' 'elf_x86_64' '-lx86_64' '-o' 'qubes_skeleton.xen']: exited with 1
Makefile:18: recipe for target 'build' failed
make: *** [build] Error 1
yallop commented 6 years ago

Thanks for the update, @cfcs. I don't see -package ctypes in the build command; does adding it fix the linking errors you're seeing?

cfcs commented 6 years ago

No. I suspect it's depending on a bunch of stuff that the mirage-xen thingie doesn't have (floats?). Anyway, don't worry about it. I don't have a clear idea what is going on; it may very well be me doing something silly somewhere.

Here's with "ctypes" added:

user@pubdev:~/ocaml/qubes-mirage-skeleton$ . yomake 
make: *** No rule to make target 'clean'.  Stop.
mirage build
ocamlfind ocamldep -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -modules main.ml > main.ml.depends
ocamlfind ocamldep -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -modules key_gen.ml > key_gen.ml.depends
ocamlfind ocamldep -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -modules unikernel.ml > unikernel.ml.depends
ocamlfind ocamldep -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -modules command.ml > command.ml.depends
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o command.cmo command.ml
+ ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o command.cmo command.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o key_gen.cmo key_gen.ml
+ ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o key_gen.cmo key_gen.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmo unikernel.ml
+ ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmo unikernel.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
File "unikernel.ml", line 22, characters 12-19:
Warning 27: unused variable qubesDB.
File "unikernel.ml", line 22, characters 20-25:
Warning 27: unused variable stack.
ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o main.cmo main.ml
+ ocamlfind ocamlc -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o main.cmo main.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o command.cmx command.ml
+ ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o command.cmx command.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o key_gen.cmx key_gen.ml
+ ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o key_gen.cmx key_gen.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmx unikernel.ml
+ ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o unikernel.cmx unikernel.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
File "unikernel.ml", line 22, characters 12-19:
Warning 27: unused variable qubesDB.
File "unikernel.ml", line 22, characters 20-25:
Warning 27: unused variable stack.
ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o main.cmx main.ml
+ ocamlfind ocamlopt -c -g -g -bin-annot -safe-string -principal -strict-sequence -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen -w A-4-41-42-44 -color always -o main.cmx main.ml
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
ocamlfind ocamlopt -g -dontlink unix -dontlink str -dontlink num -dontlink threads -linkpkg -output-obj -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen command.cmx key_gen.cmx unikernel.cmx main.cmx -o main.native.o
+ ocamlfind ocamlopt -g -dontlink unix -dontlink str -dontlink num -dontlink threads -linkpkg -output-obj -package tcpip.xen -package tcpip.udp -package tcpip.tcp -package tcpip.stack-direct -package tcpip.icmpv4 -package tcpip.ethif -package tcpip.arpv4 -package tcpip -package mirage-xen -package mirage-types-lwt -package mirage-types -package mirage-runtime -package mirage-random -package mirage-qubes-ipv4 -package mirage-qubes -package mirage-net-xen -package mirage-logs -package mirage-clock-freestanding -package lwt -package io-page.xen -package io-page -package functoria-runtime -package ctypes -predicates mirage_xen command.cmx key_gen.cmx unikernel.cmx main.cmx -o main.native.o
findlib: [WARNING] Interface qubesdb_ipv4.cmi occurs in several directories: /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes-ipv4, /home/user/.opam/4.04.2+fPIC/lib/mirage-qubes
_build/main.native.o: In function `camlLDouble__fun_1371':
(.text+0x7dba): undefined reference to `ctypes_ldouble_classify'
_build/main.native.o: In function `camlLDouble__fun_1373':
(.text+0x7dea): undefined reference to `ctypes_ldouble_modf'
_build/main.native.o: In function `camlLDouble__fun_1375':
(.text+0x7e1d): undefined reference to `ctypes_ldouble_ldexp'
_build/main.native.o: In function `camlLDouble__fun_1377':
(.text+0x7e4a): undefined reference to `ctypes_ldouble_frexp'
_build/main.native.o: In function `camlLDouble__fun_1379':
(.text+0x7e7d): undefined reference to `ctypes_ldouble_copysignl'
_build/main.native.o: In function `camlLDouble__fun_1381':
(.text+0x7ead): undefined reference to `ctypes_ldouble_remainderl'
_build/main.native.o: In function `camlLDouble__fun_1383':
(.text+0x7eda): undefined reference to `ctypes_ldouble_fabsl'
_build/main.native.o: In function `camlLDouble__fun_1385':
(.text+0x7f0a): undefined reference to `ctypes_ldouble_floorl'
_build/main.native.o: In function `camlLDouble__fun_1387':
(.text+0x7f3a): undefined reference to `ctypes_ldouble_ceill'
_build/main.native.o: In function `camlLDouble__fun_1389':
(.text+0x7f6a): undefined reference to `ctypes_ldouble_atanhl'
_build/main.native.o: In function `camlLDouble__fun_1391':
(.text+0x7f9a): undefined reference to `ctypes_ldouble_asinhl'
_build/main.native.o: In function `camlLDouble__fun_1393':
(.text+0x7fca): undefined reference to `ctypes_ldouble_acoshl'
_build/main.native.o: In function `camlLDouble__fun_1395':
(.text+0x7ffa): undefined reference to `ctypes_ldouble_tanhl'
_build/main.native.o: In function `camlLDouble__fun_1397':
(.text+0x802a): undefined reference to `ctypes_ldouble_sinhl'
_build/main.native.o: In function `camlLDouble__fun_1399':
(.text+0x805a): undefined reference to `ctypes_ldouble_coshl'
_build/main.native.o: In function `camlLDouble__fun_1401':
(.text+0x808d): undefined reference to `ctypes_ldouble_hypotl'
_build/main.native.o: In function `camlLDouble__fun_1403':
(.text+0x80bd): undefined reference to `ctypes_ldouble_atan2l'
_build/main.native.o: In function `camlLDouble__fun_1405':
(.text+0x80ea): undefined reference to `ctypes_ldouble_atanl'
_build/main.native.o: In function `camlLDouble__fun_1407':
(.text+0x811a): undefined reference to `ctypes_ldouble_asinl'
_build/main.native.o: In function `camlLDouble__fun_1409':
(.text+0x814a): undefined reference to `ctypes_ldouble_acosl'
_build/main.native.o: In function `camlLDouble__fun_1411':
(.text+0x817a): undefined reference to `ctypes_ldouble_tanl'
_build/main.native.o: In function `camlLDouble__fun_1413':
(.text+0x81aa): undefined reference to `ctypes_ldouble_sinl'
_build/main.native.o: In function `camlLDouble__fun_1415':
(.text+0x81da): undefined reference to `ctypes_ldouble_cosl'
_build/main.native.o: In function `camlLDouble__fun_1417':
(.text+0x820a): undefined reference to `ctypes_ldouble_log1pl'
_build/main.native.o: In function `camlLDouble__fun_1419':
(.text+0x823a): undefined reference to `ctypes_ldouble_expm1l'
_build/main.native.o: In function `camlLDouble__fun_1421':
(.text+0x826a): undefined reference to `ctypes_ldouble_log10l'
_build/main.native.o: In function `camlLDouble__fun_1423':
(.text+0x829a): undefined reference to `ctypes_ldouble_logl'
_build/main.native.o: In function `camlLDouble__fun_1425':
(.text+0x82ca): undefined reference to `ctypes_ldouble_expl'
_build/main.native.o: In function `camlLDouble__fun_1427':
(.text+0x82fa): undefined reference to `ctypes_ldouble_sqrtl'
_build/main.native.o: In function `camlLDouble__fun_1429':
(.text+0x832d): undefined reference to `ctypes_ldouble_powl'
_build/main.native.o: In function `camlLDouble__fun_1431':
(.text+0x835a): undefined reference to `ctypes_ldouble_neg'
_build/main.native.o: In function `camlLDouble__fun_1433':
(.text+0x838d): undefined reference to `ctypes_ldouble_div'
_build/main.native.o: In function `camlLDouble__fun_1435':
(.text+0x83bd): undefined reference to `ctypes_ldouble_mul'
_build/main.native.o: In function `camlLDouble__fun_1437':
(.text+0x83ed): undefined reference to `ctypes_ldouble_sub'
_build/main.native.o: In function `camlLDouble__fun_1439':
(.text+0x841d): undefined reference to `ctypes_ldouble_add'
_build/main.native.o: In function `camlLDouble__fun_1441':
(.text+0x844a): undefined reference to `ctypes_ldouble_of_string'
_build/main.native.o: In function `camlLDouble__fun_1443':
(.text+0x847a): undefined reference to `ctypes_ldouble_of_int'
_build/main.native.o: In function `camlLDouble__fun_1445':
(.text+0x84aa): undefined reference to `ctypes_ldouble_to_int'
_build/main.native.o: In function `camlLDouble__fun_1447':
(.text+0x84da): undefined reference to `ctypes_ldouble_of_float'
_build/main.native.o: In function `camlLDouble__fun_1449':
(.text+0x850a): undefined reference to `ctypes_ldouble_to_float'
_build/main.native.o: In function `camlLDouble__to_string_inner_1451':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:19: undefined reference to `ctypes_ldouble_format'
_build/main.native.o: In function `camlLDouble__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:9: undefined reference to `ldouble_init'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:62: undefined reference to `ctypes_ldouble_min'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:64: undefined reference to `ctypes_ldouble_max'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:66: undefined reference to `ctypes_ldouble_epsilon'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:68: undefined reference to `ctypes_ldouble_nan'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:70: undefined reference to `ctypes_ldouble_inf'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:72: undefined reference to `ctypes_ldouble_ninf'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:74: undefined reference to `ctypes_ldouble_of_int'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:75: undefined reference to `ctypes_ldouble_of_int'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/lDouble.ml:78: undefined reference to `ctypes_ldouble_size'
_build/main.native.o: In function `camlComplexL__fun_1355':
(.text+0x897d): undefined reference to `ctypes_ldouble_complex_cpowl'
_build/main.native.o: In function `camlComplexL__fun_1357':
(.text+0x89aa): undefined reference to `ctypes_ldouble_complex_clogl'
_build/main.native.o: In function `camlComplexL__fun_1359':
(.text+0x89da): undefined reference to `ctypes_ldouble_complex_cexpl'
_build/main.native.o: In function `camlComplexL__fun_1361':
(.text+0x8a0a): undefined reference to `ctypes_ldouble_complex_cargl'
_build/main.native.o: In function `camlComplexL__fun_1363':
(.text+0x8a3a): undefined reference to `ctypes_ldouble_complex_csqrtl'
_build/main.native.o: In function `camlComplexL__fun_1365':
(.text+0x8a6d): undefined reference to `ctypes_ldouble_complex_div'
_build/main.native.o: In function `camlComplexL__fun_1367':
(.text+0x8a9d): undefined reference to `ctypes_ldouble_complex_mul'
_build/main.native.o: In function `camlComplexL__fun_1369':
(.text+0x8acd): undefined reference to `ctypes_ldouble_complex_sub'
_build/main.native.o: In function `camlComplexL__fun_1371':
(.text+0x8afd): undefined reference to `ctypes_ldouble_complex_add'
_build/main.native.o: In function `camlComplexL__fun_1373':
(.text+0x8b2a): undefined reference to `ctypes_ldouble_complex_conjl'
_build/main.native.o: In function `camlComplexL__fun_1375':
(.text+0x8b5a): undefined reference to `ctypes_ldouble_complex_neg'
_build/main.native.o: In function `camlComplexL__fun_1377':
(.text+0x8b8a): undefined reference to `ctypes_ldouble_complex_imag'
_build/main.native.o: In function `camlComplexL__fun_1379':
(.text+0x8bba): undefined reference to `ctypes_ldouble_complex_real'
_build/main.native.o: In function `camlComplexL__fun_1381':
(.text+0x8bed): undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlComplexL__of_complex_1254':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:8: undefined reference to `ctypes_ldouble_of_float'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:8: undefined reference to `ctypes_ldouble_of_float'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:8: undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlComplexL__to_complex_1275':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_complex_imag'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_to_float'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_complex_real'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:9: undefined reference to `ctypes_ldouble_to_float'
_build/main.native.o: In function `camlComplexL__norm2_1277':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:12: undefined reference to `ctypes_ldouble_complex_imag'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:12: undefined reference to `ctypes_ldouble_complex_real'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:13: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:13: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:13: undefined reference to `ctypes_ldouble_add'
_build/main.native.o: In function `camlComplexL__norm_1281':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_complex_real'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_fabsl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_complex_imag'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:17: undefined reference to `ctypes_ldouble_fabsl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_div'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_add'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_sqrtl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:21: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_div'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_add'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_sqrtl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:23: undefined reference to `ctypes_ldouble_mul'
_build/main.native.o: In function `camlComplexL__polar_1287':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_sinl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_cosl'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_mul'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:25: undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlComplexL__inv_1299':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:37: undefined reference to `ctypes_ldouble_complex_div'
_build/main.native.o: In function `camlComplexL__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:27: undefined reference to `ctypes_ldouble_complex_make'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:28: undefined reference to `ctypes_ldouble_complex_make'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/complexL.ml:29: undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlCtypes_bigarray__unsafe_address_1540':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:127: undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlCtypes_bigarray__view_1645':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:132: undefined reference to `ctypes_bigarray_view'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:133: undefined reference to `ctypes_bigarray_view'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:134: undefined reference to `ctypes_bigarray_view'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:135: undefined reference to `ctypes_bigarray_view'
_build/main.native.o: In function `camlCtypes_bigarray__fun_1911':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:138: undefined reference to `ctypes_use'
_build/main.native.o: In function `camlCtypes_memory__fun_12062':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:21: undefined reference to `ctypes_read'
_build/main.native.o: In function `camlCtypes_memory__fun_12056':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:21: undefined reference to `ctypes_read'
_build/main.native.o: In function `camlCtypes_memory__fun_12071':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:26: undefined reference to `ctypes_allocate'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:27: undefined reference to `ctypes_block_address'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:28: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__fun_12065':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:31: undefined reference to `ctypes_read_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12068':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:33: undefined reference to `ctypes_read_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12081':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:47: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__fun_12153':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:51: undefined reference to `ctypes_write'
_build/main.native.o: In function `camlCtypes_memory__fun_12147':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:51: undefined reference to `ctypes_write'
_build/main.native.o: In function `camlCtypes_memory__fun_12158':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:53: undefined reference to `ctypes_write_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12161':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:55: undefined reference to `ctypes_write_pointer'
_build/main.native.o: In function `camlCtypes_memory__fun_12187':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:64: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__fun_12190':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:127: undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlCtypes_memory__fun_12190':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:71: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory__allocate_n_3537':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:135: undefined reference to `ctypes_allocate'
_build/main.native.o: In function `camlCtypes_memory__package_3543':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:129: undefined reference to `ctypes_block_address'
_build/main.native.o: In function `camlCtypes_memory__copy_4613':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:206: undefined reference to `ctypes_memcpy'
_build/main.native.o: In function `camlCtypes_memory___bigarray_start_6877':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_bigarray.ml:127: undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlCtypes_memory__fun_12329':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:384: undefined reference to `ctypes_string_of_array'
_build/main.native.o: In function `camlCtypes_memory__create_11080':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:404: undefined reference to `ctypes_caml_roots_create'
_build/main.native.o: In function `camlCtypes_memory__get_11086':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:407: undefined reference to `ctypes_caml_roots_get'
_build/main.native.o: In function `camlCtypes_memory__set_11088':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:410: undefined reference to `ctypes_caml_roots_set'
_build/main.native.o: In function `camlCtypes_memory__release_11091':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_memory.ml:413: undefined reference to `ctypes_caml_roots_release'
_build/main.native.o: In function `camlCtypes_std_views__string_of_char_ptr_1199':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:9: undefined reference to `ctypes_string_of_cstring'
_build/main.native.o: In function `camlCtypes_std_views__char_ptr_of_string_1352':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:12: undefined reference to `ctypes_cstring_of_string'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:14: undefined reference to `ctypes_block_address'
_build/main.native.o: In function `camlCtypes_std_views__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:91: undefined reference to `integers_intptr_t_size'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:93: undefined reference to `integers_uintptr_t_size'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_std_views.ml:98: undefined reference to `integers_ptrdiff_t_size'
_build/main.native.o: In function `camlCtypes_value_printing__format_1383':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_value_printing.ml:15: undefined reference to `ctypes_string_of_prim'
_build/main.native.o: In function `camlCtypes_value_printing__format_ptr_1388':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_value_printing.ml:85: undefined reference to `ctypes_string_of_pointer'
_build/main.native.o: In function `camlCtypes_value_printing__format_funptr_1389':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/ctypes_value_printing.ml:88: undefined reference to `ctypes_string_of_pointer'
_build/main.native.o: In function `camlCstubs_internals__make_structured_1481':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/cstubs_internals.ml:19: undefined reference to `ctypes_block_address'
_build/main.native.o: In function `camlCstubs_internals__uint8_of_int64_1818':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlCstubs_internals__uint16_of_int64_2142':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlCstubs_internals__uint32_of_int64_2183':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlCstubs_internals__int64_of_uint32_2224':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlCstubs_internals__use_value_2278':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/cstubs_internals.ml:89: undefined reference to `ctypes_use'
_build/main.native.o: In function `camlPosixTypes__entry':
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:78: undefined reference to `ctypes_typeof_clock_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:79: undefined reference to `ctypes_typeof_dev_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:80: undefined reference to `ctypes_typeof_ino_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:81: undefined reference to `ctypes_typeof_mode_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:82: undefined reference to `ctypes_typeof_nlink_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:83: undefined reference to `ctypes_typeof_off_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:84: undefined reference to `ctypes_typeof_pid_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:90: undefined reference to `ctypes_typeof_ssize_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:91: undefined reference to `ctypes_typeof_time_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:92: undefined reference to `ctypes_typeof_useconds_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:124: undefined reference to `ctypes_alignmentof_sigset_t'
/home/user/.opam/4.04.2+fPIC/build/ctypes.dev/src/ctypes/posixTypes.ml:124: undefined reference to `ctypes_sizeof_sigset_t'
_build/main.native.o: In function `camlUnsigned__fun_2514':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2518':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2522':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:125: undefined reference to `integers_uint8_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2540':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2544':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2548':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:157: undefined reference to `integers_uint16_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2646':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:168: undefined reference to `integers_uint32_of_int32'
_build/main.native.o: In function `camlUnsigned__fun_2648':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:169: undefined reference to `integers_int32_of_uint32'
_build/main.native.o: In function `camlUnsigned__fun_2550':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:175: undefined reference to `integers_uint32_add'
_build/main.native.o: In function `camlUnsigned__fun_2582':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:175: undefined reference to `integers_uint32_add'
_build/main.native.o: In function `camlUnsigned__fun_2614':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:175: undefined reference to `integers_uint32_add'
_build/main.native.o: In function `camlUnsigned__fun_2552':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:176: undefined reference to `integers_uint32_sub'
_build/main.native.o: In function `camlUnsigned__fun_2584':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:176: undefined reference to `integers_uint32_sub'
_build/main.native.o: In function `camlUnsigned__fun_2616':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:176: undefined reference to `integers_uint32_sub'
_build/main.native.o: In function `camlUnsigned__fun_2554':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:177: undefined reference to `integers_uint32_mul'
_build/main.native.o: In function `camlUnsigned__fun_2586':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:177: undefined reference to `integers_uint32_mul'
_build/main.native.o: In function `camlUnsigned__fun_2618':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:177: undefined reference to `integers_uint32_mul'
_build/main.native.o: In function `camlUnsigned__fun_2556':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:178: undefined reference to `integers_uint32_div'
_build/main.native.o: In function `camlUnsigned__fun_2588':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:178: undefined reference to `integers_uint32_div'
_build/main.native.o: In function `camlUnsigned__fun_2620':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:178: undefined reference to `integers_uint32_div'
_build/main.native.o: In function `camlUnsigned__fun_2558':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:179: undefined reference to `integers_uint32_rem'
_build/main.native.o: In function `camlUnsigned__fun_2590':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:179: undefined reference to `integers_uint32_rem'
_build/main.native.o: In function `camlUnsigned__fun_2622':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:179: undefined reference to `integers_uint32_rem'
_build/main.native.o: In function `camlUnsigned__fun_2560':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:180: undefined reference to `integers_uint32_logand'
_build/main.native.o: In function `camlUnsigned__fun_2592':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:180: undefined reference to `integers_uint32_logand'
_build/main.native.o: In function `camlUnsigned__fun_2624':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:180: undefined reference to `integers_uint32_logand'
_build/main.native.o: In function `camlUnsigned__fun_2562':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:181: undefined reference to `integers_uint32_logor'
_build/main.native.o: In function `camlUnsigned__fun_2594':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:181: undefined reference to `integers_uint32_logor'
_build/main.native.o: In function `camlUnsigned__fun_2626':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:181: undefined reference to `integers_uint32_logor'
_build/main.native.o: In function `camlUnsigned__fun_2564':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:182: undefined reference to `integers_uint32_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2596':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:182: undefined reference to `integers_uint32_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2628':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:182: undefined reference to `integers_uint32_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2566':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:183: undefined reference to `integers_uint32_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2598':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:183: undefined reference to `integers_uint32_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2630':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:183: undefined reference to `integers_uint32_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2568':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:184: undefined reference to `integers_uint32_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2600':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:184: undefined reference to `integers_uint32_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2632':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:184: undefined reference to `integers_uint32_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2570':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:185: undefined reference to `integers_uint32_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2602':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:185: undefined reference to `integers_uint32_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2634':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:185: undefined reference to `integers_uint32_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2572':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:186: undefined reference to `integers_uint32_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2604':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:186: undefined reference to `integers_uint32_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2636':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:186: undefined reference to `integers_uint32_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2574':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:187: undefined reference to `integers_uint32_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2606':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:187: undefined reference to `integers_uint32_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2638':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:187: undefined reference to `integers_uint32_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2576':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:188: undefined reference to `integers_uint32_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2608':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:188: undefined reference to `integers_uint32_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2640':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:188: undefined reference to `integers_uint32_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2578':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2610':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2642':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:189: undefined reference to `integers_uint32_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2580':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2612':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2644':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:190: undefined reference to `integers_uint32_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2752':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:204: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2742':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:204: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2754':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:205: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2744':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:205: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2650':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:211: undefined reference to `integers_uint64_add'
_build/main.native.o: In function `camlUnsigned__fun_2682':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:211: undefined reference to `integers_uint64_add'
_build/main.native.o: In function `camlUnsigned__fun_2714':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:211: undefined reference to `integers_uint64_add'
_build/main.native.o: In function `camlUnsigned__fun_2652':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:212: undefined reference to `integers_uint64_sub'
_build/main.native.o: In function `camlUnsigned__fun_2684':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:212: undefined reference to `integers_uint64_sub'
_build/main.native.o: In function `camlUnsigned__fun_2716':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:212: undefined reference to `integers_uint64_sub'
_build/main.native.o: In function `camlUnsigned__fun_2654':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:213: undefined reference to `integers_uint64_mul'
_build/main.native.o: In function `camlUnsigned__fun_2686':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:213: undefined reference to `integers_uint64_mul'
_build/main.native.o: In function `camlUnsigned__fun_2718':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:213: undefined reference to `integers_uint64_mul'
_build/main.native.o: In function `camlUnsigned__fun_2656':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:214: undefined reference to `integers_uint64_div'
_build/main.native.o: In function `camlUnsigned__fun_2688':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:214: undefined reference to `integers_uint64_div'
_build/main.native.o: In function `camlUnsigned__fun_2720':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:214: undefined reference to `integers_uint64_div'
_build/main.native.o: In function `camlUnsigned__fun_2658':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:215: undefined reference to `integers_uint64_rem'
_build/main.native.o: In function `camlUnsigned__fun_2690':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:215: undefined reference to `integers_uint64_rem'
_build/main.native.o: In function `camlUnsigned__fun_2722':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:215: undefined reference to `integers_uint64_rem'
_build/main.native.o: In function `camlUnsigned__fun_2660':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:216: undefined reference to `integers_uint64_logand'
_build/main.native.o: In function `camlUnsigned__fun_2692':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:216: undefined reference to `integers_uint64_logand'
_build/main.native.o: In function `camlUnsigned__fun_2724':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:216: undefined reference to `integers_uint64_logand'
_build/main.native.o: In function `camlUnsigned__fun_2662':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:217: undefined reference to `integers_uint64_logor'
_build/main.native.o: In function `camlUnsigned__fun_2694':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:217: undefined reference to `integers_uint64_logor'
_build/main.native.o: In function `camlUnsigned__fun_2726':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:217: undefined reference to `integers_uint64_logor'
_build/main.native.o: In function `camlUnsigned__fun_2664':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:218: undefined reference to `integers_uint64_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2696':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:218: undefined reference to `integers_uint64_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2728':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:218: undefined reference to `integers_uint64_logxor'
_build/main.native.o: In function `camlUnsigned__fun_2666':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:219: undefined reference to `integers_uint64_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2698':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:219: undefined reference to `integers_uint64_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2730':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:219: undefined reference to `integers_uint64_shift_left'
_build/main.native.o: In function `camlUnsigned__fun_2668':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:220: undefined reference to `integers_uint64_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2700':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:220: undefined reference to `integers_uint64_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2732':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:220: undefined reference to `integers_uint64_shift_right'
_build/main.native.o: In function `camlUnsigned__fun_2670':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:221: undefined reference to `integers_uint64_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2702':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:221: undefined reference to `integers_uint64_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2734':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:221: undefined reference to `integers_uint64_of_int'
_build/main.native.o: In function `camlUnsigned__fun_2672':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:222: undefined reference to `integers_uint64_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2704':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:222: undefined reference to `integers_uint64_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2736':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:222: undefined reference to `integers_uint64_to_int'
_build/main.native.o: In function `camlUnsigned__fun_2674':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:223: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2706':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:223: undefined reference to `integers_uint64_of_int64'
_build/main.native.o: In function `camlUnsigned__fun_2676':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:224: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2708':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:224: undefined reference to `integers_uint64_to_int64'
_build/main.native.o: In function `camlUnsigned__fun_2678':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:225: undefined reference to `integers_uint64_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2710':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:225: undefined reference to `integers_uint64_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2738':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:225: undefined reference to `integers_uint64_of_string'
_build/main.native.o: In function `camlUnsigned__fun_2680':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:226: undefined reference to `integers_uint64_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2712':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:226: undefined reference to `integers_uint64_to_string'
_build/main.native.o: In function `camlUnsigned__fun_2740':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:226: undefined reference to `integers_uint64_to_string'
_build/main.native.o: In function `camlUnsigned__entry':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:9: undefined reference to `integers_unsigned_init'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:192: undefined reference to `integers_uint32_max'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:228: undefined reference to `integers_uint64_max'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:250: undefined reference to `integers_size_t_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:252: undefined reference to `integers_ushort_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:253: undefined reference to `integers_uint_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:254: undefined reference to `integers_ulong_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/unsigned.ml:255: undefined reference to `integers_ulonglong_size'
_build/main.native.o: In function `camlSigned__entry':
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/signed.ml:127: undefined reference to `integers_uint_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/signed.ml:128: undefined reference to `integers_ulong_size'
/home/user/.opam/4.04.2+fPIC/build/integers.0.2.2/_build/src/signed.ml:129: undefined reference to `integers_ulonglong_size'
_build/main.native.o: In function `camlCtypes_roots_stubs__gc_roots':
(.data+0x9d10): undefined reference to `ctypes_caml_roots_release'
(.data+0x9d18): undefined reference to `ctypes_caml_roots_get'
(.data+0x9d20): undefined reference to `ctypes_caml_roots_set'
(.data+0x9d28): undefined reference to `ctypes_caml_roots_create'
_build/main.native.o: In function `camlLDouble__41':
:(.data+0xa338): undefined reference to `ctypes_ldouble_size'
:(.data+0xa340): undefined reference to `ctypes_ldouble_ninf'
:(.data+0xa348): undefined reference to `ctypes_ldouble_inf'
:(.data+0xa350): undefined reference to `ctypes_ldouble_nan'
:(.data+0xa358): undefined reference to `ctypes_ldouble_epsilon'
:(.data+0xa360): undefined reference to `ctypes_ldouble_max'
:(.data+0xa368): undefined reference to `ctypes_ldouble_min'
:(.data+0xa370): undefined reference to `ctypes_ldouble_classify'
:(.data+0xa378): undefined reference to `ctypes_ldouble_modf'
:(.data+0xa380): undefined reference to `ctypes_ldouble_ldexp'
:(.data+0xa388): undefined reference to `ctypes_ldouble_frexp'
:(.data+0xa390): undefined reference to `ctypes_ldouble_copysignl'
:(.data+0xa398): undefined reference to `ctypes_ldouble_remainderl'
:(.data+0xa3a0): undefined reference to `ctypes_ldouble_fabsl'
:(.data+0xa3a8): undefined reference to `ctypes_ldouble_floorl'
:(.data+0xa3b0): undefined reference to `ctypes_ldouble_ceill'
:(.data+0xa3b8): undefined reference to `ctypes_ldouble_atanhl'
:(.data+0xa3c0): undefined reference to `ctypes_ldouble_asinhl'
:(.data+0xa3c8): undefined reference to `ctypes_ldouble_acoshl'
:(.data+0xa3d0): undefined reference to `ctypes_ldouble_tanhl'
:(.data+0xa3d8): undefined reference to `ctypes_ldouble_sinhl'
:(.data+0xa3e0): undefined reference to `ctypes_ldouble_coshl'
:(.data+0xa3e8): undefined reference to `ctypes_ldouble_hypotl'
:(.data+0xa3f0): undefined reference to `ctypes_ldouble_atan2l'
:(.data+0xa3f8): undefined reference to `ctypes_ldouble_atanl'
:(.data+0xa400): undefined reference to `ctypes_ldouble_asinl'
:(.data+0xa408): undefined reference to `ctypes_ldouble_acosl'
:(.data+0xa410): undefined reference to `ctypes_ldouble_tanl'
:(.data+0xa418): undefined reference to `ctypes_ldouble_sinl'
:(.data+0xa420): undefined reference to `ctypes_ldouble_cosl'
:(.data+0xa428): undefined reference to `ctypes_ldouble_log1pl'
:(.data+0xa430): undefined reference to `ctypes_ldouble_expm1l'
:(.data+0xa438): undefined reference to `ctypes_ldouble_log10l'
:(.data+0xa440): undefined reference to `ctypes_ldouble_logl'
:(.data+0xa448): undefined reference to `ctypes_ldouble_expl'
:(.data+0xa450): undefined reference to `ctypes_ldouble_sqrtl'
:(.data+0xa458): undefined reference to `ctypes_ldouble_powl'
:(.data+0xa460): undefined reference to `ctypes_ldouble_neg'
:(.data+0xa468): undefined reference to `ctypes_ldouble_div'
:(.data+0xa470): undefined reference to `ctypes_ldouble_mul'
:(.data+0xa478): undefined reference to `ctypes_ldouble_sub'
:(.data+0xa480): undefined reference to `ctypes_ldouble_add'
:(.data+0xa488): undefined reference to `ctypes_ldouble_of_string'
:(.data+0xa490): undefined reference to `ctypes_ldouble_format'
:(.data+0xa498): undefined reference to `ctypes_ldouble_of_int'
:(.data+0xa4a0): undefined reference to `ctypes_ldouble_to_int'
:(.data+0xa4a8): undefined reference to `ctypes_ldouble_of_float'
:(.data+0xa4b0): undefined reference to `ctypes_ldouble_to_float'
:(.data+0xa4b8): undefined reference to `ldouble_init'
_build/main.native.o: In function `camlCtypes_bigarray_stubs__gc_roots':
(.data+0xa930): undefined reference to `ctypes_bigarray_view'
(.data+0xa938): undefined reference to `ctypes_bigarray_view'
(.data+0xa940): undefined reference to `ctypes_bigarray_view'
(.data+0xa948): undefined reference to `ctypes_bigarray_view'
(.data+0xa950): undefined reference to `ctypes_bigarray_address'
_build/main.native.o: In function `camlComplexL__20':
:(.data+0xac50): undefined reference to `ctypes_ldouble_complex_cpowl'
:(.data+0xac58): undefined reference to `ctypes_ldouble_complex_clogl'
:(.data+0xac60): undefined reference to `ctypes_ldouble_complex_cexpl'
:(.data+0xac68): undefined reference to `ctypes_ldouble_complex_cargl'
:(.data+0xac70): undefined reference to `ctypes_ldouble_complex_csqrtl'
:(.data+0xac78): undefined reference to `ctypes_ldouble_complex_div'
:(.data+0xac80): undefined reference to `ctypes_ldouble_complex_mul'
:(.data+0xac88): undefined reference to `ctypes_ldouble_complex_sub'
:(.data+0xac90): undefined reference to `ctypes_ldouble_complex_add'
:(.data+0xac98): undefined reference to `ctypes_ldouble_complex_conjl'
:(.data+0xaca0): undefined reference to `ctypes_ldouble_complex_neg'
:(.data+0xaca8): undefined reference to `ctypes_ldouble_complex_imag'
:(.data+0xacb0): undefined reference to `ctypes_ldouble_complex_real'
:(.data+0xacb8): undefined reference to `ctypes_ldouble_complex_make'
_build/main.native.o: In function `camlCtypes_value_printing_stubs__gc_roots':
_build/main.native.o: In function `camlCtypes_value_printing_stubs__gc_roots':
(.data+0xb8b8): undefined reference to `ctypes_string_of_pointer'
(.data+0xb8c0): undefined reference to `ctypes_string_of_prim'
_build/main.native.o: In function `camlCtypes_memory_stubs__1':
(.data+0xb900): undefined reference to `ctypes_use'
(.data+0xb908): undefined reference to `ctypes_string_of_array'
(.data+0xb910): undefined reference to `ctypes_memcpy'
(.data+0xb918): undefined reference to `ctypes_write_pointer'
(.data+0xb920): undefined reference to `ctypes_read_pointer'
(.data+0xb928): undefined reference to `ctypes_write'
(.data+0xb930): undefined reference to `ctypes_read'
(.data+0xb938): undefined reference to `ctypes_block_address'
(.data+0xb940): undefined reference to `ctypes_allocate'
_build/main.native.o: In function `camlCtypes_std_view_stubs__gc_roots':
(.data+0xda60): undefined reference to `integers_ptrdiff_t_size'
(.data+0xda68): undefined reference to `integers_intptr_t_size'
(.data+0xda70): undefined reference to `integers_uintptr_t_size'
(.data+0xda78): undefined reference to `ctypes_cstring_of_string'
(.data+0xda80): undefined reference to `ctypes_string_of_cstring'
_build/main.native.o: In function `camlPosixTypes__32':
:(.data+0x16b80): undefined reference to `ctypes_alignmentof_sigset_t'
:(.data+0x16b88): undefined reference to `ctypes_sizeof_sigset_t'
:(.data+0x16b90): undefined reference to `ctypes_typeof_useconds_t'
:(.data+0x16b98): undefined reference to `ctypes_typeof_time_t'
:(.data+0x16ba0): undefined reference to `ctypes_typeof_ssize_t'
:(.data+0x16ba8): undefined reference to `ctypes_typeof_pid_t'
:(.data+0x16bb0): undefined reference to `ctypes_typeof_off_t'
:(.data+0x16bb8): undefined reference to `ctypes_typeof_nlink_t'
:(.data+0x16bc0): undefined reference to `ctypes_typeof_mode_t'
:(.data+0x16bc8): undefined reference to `ctypes_typeof_ino_t'
:(.data+0x16bd0): undefined reference to `ctypes_typeof_dev_t'
:(.data+0x16bd8): undefined reference to `ctypes_typeof_clock_t'
_build/main.native.o: In function `camlUnsigned__140':
:(.data+0x18620): undefined reference to `integers_ulonglong_size'
:(.data+0x18628): undefined reference to `integers_ulong_size'
:(.data+0x18630): undefined reference to `integers_uint_size'
:(.data+0x18638): undefined reference to `integers_ushort_size'
:(.data+0x18640): undefined reference to `integers_size_t_size'
:(.data+0x18648): undefined reference to `integers_uint64_max'
:(.data+0x18650): undefined reference to `integers_uint64_to_string'
:(.data+0x18658): undefined reference to `integers_uint64_of_string'
:(.data+0x18660): undefined reference to `integers_uint64_to_int64'
:(.data+0x18668): undefined reference to `integers_uint64_of_int64'
:(.data+0x18670): undefined reference to `integers_uint64_to_int'
:(.data+0x18678): undefined reference to `integers_uint64_of_int'
:(.data+0x18680): undefined reference to `integers_uint64_shift_right'
:(.data+0x18688): undefined reference to `integers_uint64_shift_left'
:(.data+0x18690): undefined reference to `integers_uint64_logxor'
:(.data+0x18698): undefined reference to `integers_uint64_logor'
:(.data+0x186a0): undefined reference to `integers_uint64_logand'
:(.data+0x186a8): undefined reference to `integers_uint64_rem'
:(.data+0x186b0): undefined reference to `integers_uint64_div'
:(.data+0x186b8): undefined reference to `integers_uint64_mul'
:(.data+0x186c0): undefined reference to `integers_uint64_sub'
:(.data+0x186c8): undefined reference to `integers_uint64_add'
:(.data+0x186d0): undefined reference to `integers_int32_of_uint32'
:(.data+0x186d8): undefined reference to `integers_uint32_of_int32'
:(.data+0x186e0): undefined reference to `integers_uint32_max'
:(.data+0x186e8): undefined reference to `integers_uint32_to_string'
:(.data+0x186f0): undefined reference to `integers_uint32_of_string'
:(.data+0x186f8): undefined reference to `integers_uint32_to_int64'
:(.data+0x18700): undefined reference to `integers_uint32_of_int64'
:(.data+0x18708): undefined reference to `integers_uint32_to_int'
:(.data+0x18710): undefined reference to `integers_uint32_of_int'
:(.data+0x18718): undefined reference to `integers_uint32_shift_right'
:(.data+0x18720): undefined reference to `integers_uint32_shift_left'
:(.data+0x18728): undefined reference to `integers_uint32_logxor'
:(.data+0x18730): undefined reference to `integers_uint32_logor'
:(.data+0x18738): undefined reference to `integers_uint32_logand'
:(.data+0x18740): undefined reference to `integers_uint32_rem'
:(.data+0x18748): undefined reference to `integers_uint32_div'
:(.data+0x18750): undefined reference to `integers_uint32_mul'
:(.data+0x18758): undefined reference to `integers_uint32_sub'
:(.data+0x18760): undefined reference to `integers_uint32_add'
:(.data+0x18768): undefined reference to `integers_uint16_of_string'
:(.data+0x18770): undefined reference to `integers_uint8_of_string'
:(.data+0x18778): undefined reference to `integers_unsigned_init'
_build/main.native.o: In function `camlSigned__85':
:(.data+0x1aa28): undefined reference to `integers_ulonglong_size'
:(.data+0x1aa30): undefined reference to `integers_ulong_size'
:(.data+0x1aa38): undefined reference to `integers_uint_size'
run ['ld' '-d' '-static' '-nostdlib' '_build/main.native.o'
     '-L/home/user/.opam/4.04.2+fPIC/lib/io-page-xen' '-lio_page_xen_stubs'
     '-L/home/user/.opam/4.04.2+fPIC/lib/tcpip'
     '-L/home/user/.opam/4.04.2+fPIC/lib/tcpip/xen' '-ltcpip_xen_stubs'
     '-L/home/user/.opam/4.04.2+fPIC/lib'
     '-L/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/minios-xen'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen/libxencamlbindings.a'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen-ocaml/libxenasmrun.a'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen-ocaml/libxenotherlibs.a'
     '/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/mirage-xen-posix/libxenposix.a'
     '-lopenlibm' '-lminios'
     '-T/home/user/.opam/4.04.2+fPIC/lib/pkgconfig/../../lib/minios-xen/libminios.lds'
     '-m' 'elf_x86_64' '-lx86_64' '-o' 'qubes_skeleton.xen']: exited with 1
Makefile:18: recipe for target 'build' failed
make: *** [build] Error 1
avsm commented 6 years ago

This is due to mirage-xen not having the ctypes stubs compiled into it. We're almost at the point of having proper stub cross compilation, but it's not quite there yet. In the meanwhile, we could add uint and the ctypes stubs directly into mirage-xen.

Ulrar commented 6 years ago

Sorry for digging this up, but I have the same errors (with some solo5 extras) while building for virtio or ukvm. Is it even possible to use ctypes with solo5 ?

avsm commented 5 years ago

Just cross-linking this to #574, which (along with some changes on the MirageOS side) make it significantly more automated to cross-compile C stubs for all the MirageOS backends.