[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [MirageOS-devel] Link errors on ARM (xen mode)
Seems like cstruct's c stubs are not linked in. It would be interesting to see the full compiler invocation. Best, Daneil Le dimanche, 19 avril 2015 Ã 21:57, Magnus Therning a Ãcrit : > Just told `opam` to upgrade the packages on my ARM system. After that > I get the following link errors when compiling for Xen: > > ~~~ > _build/main.native.o: In function `camlCstruct__compare_1532': > /home/mirage/.opam/system/build/cstruct.1.6.0/_build/lib/cstruct.ml:194: > undefined reference to `caml_compare_bigstring' > _build/main.native.o: In function `camlCstruct__memset_1542': > /home/mirage/.opam/system/build/cstruct.1.6.0/_build/lib/cstruct.ml:202: > undefined reference to `caml_fill_bigstring' > _build/main.native.o: In function `camlCstruct__41': > :(.data+0x32990): undefined reference to `caml_fill_bigstring' > :(.data+0x32994): undefined reference to `caml_compare_bigstring' > make[1]: *** [build] Error 1 > make[1]: Leaving directory `/home/mirage/mirage-ping/src' > make: *** [build] Error 2 > ~~~ > > The same project compiles fine for Unix. The code can be found at > https://gitlab.com/magus/mirage-ping.git > > To build for unix, which works fine: > > ~~~ > % make MODE=unix > ~~~ > > To build for xen, which fails with above errors: > > ~~~ > % make MODE=xen > ~~~ > > /M > > The full list of packages according to opam: > > ~~~ > # Installed packages for system: > base-bigarray base Bigarray library distributed with the OCaml compi > base-bytes legacy Bytes compatibility library distributed with ocam > base-no-ppx base A pseudo-library to indicate lack of extension po > base-threads base Threads library distributed with the OCaml compil > base-unix base Unix library distributed with the OCaml compiler > camlp4 4.01.0 Camlp4 is a system for writing extensible parsers > cmdliner 0.9.7 Declarative definition of command line interfaces > conf-pkg-config 1.0 Virtual package relying on pkg-config installatio > cppo 1.1.2 Equivalent of the C preprocessor for OCaml progra > crunch 1.4.0 Convert a filesystem into a static OCaml module > cstruct 1.6.0 access C structures via a camlp4 extension > depext 0.5 Query and install external dependencies of OPAM p > io-page 1.5.1 Allocate memory pages suitable for aligned I/O > ipaddr 2.6.1 IP (and MAC) address representation library > lwt 2.4.8 A cooperative threads library for OCaml > mirage 2.4.0 The Mirage library operating system > mirage-clock-unix 1.0.0 A Mirage-compatible Clock library for Unix > mirage-clock-xen 1.0.0 A Mirage-compatible Clock library for Xen > mirage-console 2.1.3 A Mirage-compatible Console library for Xen and U > mirage-net-unix 2.2.0 Ethernet network driver for Mirage, using tuntap > mirage-net-xen 1.4.1 Ethernet network device driver for Mirage/Xen > mirage-profile 0.4 Collect profiling information > mirage-types 2.3.0 Module type definitions for Mirage-compatible app > mirage-types-lwt 2.3.0 Lwt module type definitions for Mirage-compatible > mirage-unix 2.3.1 Mirage OS library for Unix compilation > mirage-xen 2.3.1 MirageOS library for Xen > mirage-xen-minios 0.7.0 Xen MiniOS guest operating system library > mirage-xen-ocaml 2.3.1 MirageOS headers for the OCaml runtime > mirage-xen-posix 2.3.1 MirageOS library for posix headers > ocaml-src 4.01.0 Compiler sources > ocamlfind 1.5.5 A library manager for OCaml > ocplib-endian 0.8 Optimised functions to read and write int16/32/64 > ounit 2.0.0 Unit testing framework loosely based on HUnit. It > re 1.3.2 RE is a regular expression library for OCaml > sexplib 111.13.00 Library for serializing OCaml values to and from > shared-memory-ring 1.1.1 Shared memory rings for RPC and bytestream commun > tcpip 2.4.0 Userlevel TCP/IP stack > tuntap 1.0.0 TUN/TAP bindings > type_conv 111.13.00 Library for building type-driven syntax extension > xen-evtchn 1.0.6 Xen event channel bindings. > xen-gnt 2.2.0 Xen grant table bindings > xenstore 1.2.5 Xenstore protocol clients and server > ~~~ > > -- > Magnus Therning OpenPGP: 0xAB4DFBA4 > email: magnus@xxxxxxxxxxxx (mailto:magnus@xxxxxxxxxxxx) jabber: > magnus@xxxxxxxxxxxx (mailto:magnus@xxxxxxxxxxxx) > twitter: magthe http://therning.org/magnus > > Beauty is more important in computing than anywhere else in technology > because software is so complicated. Beauty is the ultimate defence > against complexity. > -- David Gelernter > > _______________________________________________ > MirageOS-devel mailing list > MirageOS-devel@xxxxxxxxxxxxxxxxxxxx > (mailto:MirageOS-devel@xxxxxxxxxxxxxxxxxxxx) > http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel _______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |