[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] Compiling static_website+ip on Cubieboard2



On 30 July 2014 09:35, Anil Madhavapeddy <anil@xxxxxxxxxx> wrote:
> I believe this should be fixed by pinning cohttp and mirage-http to HEAD,
> as there was a minor dependency issue that caused the extra Unix libraries
> to be pulled in the OS-independent Lwt version.
>
> opam pin cohttp git://github.com/mirage/ocaml-cohttp
> opam pin mirage-http git://github.com/mirage/mirage-http
>
> We need far too many pins on ARM at the moment and should cut some releases.
> Thomas: is the checksum tree in an ok state to send a pull req for?

I've added a pull request here:

  https://github.com/mirage/mirage-tcpip/pull/63

We'll need a new release of mirage first or at the same time.

> I'm going to sort out cohttp at a high priority when I'm done with today's
> tutorial.
>
> -anil
>
> On 29 Jul 2014, at 12:03, Thomas Leonard <talex5@xxxxxxxxx> wrote:
>
>> On 29 July 2014 10:59, buzz heavyyear <buzzheavyyear@xxxxxxxxxxx> wrote:
>>> Still having problems with this. I'm building static_website+ip via ssh on
>>> the cubieboard and the build complains of not having libssl, libpthread and
>>> libssl, even though the libraries are installed (checked via apt-find and
>>> apt-get).
>>>
>>> mirage@cubie0:~/mirage-skeleton/xen/static_website+ip$ mirage configure
>>> --xen
>>> Mirage      Using scanned config file: config.ml
>>> Mirage      Processing:
>>> /home/mirage/mirage-skeleton/xen/static_website+ip/config.ml
>>> Mirage      => rm -rf
>>> /home/mirage/mirage-skeleton/xen/static_website+ip/_build/config.*
>>> Mirage      => cd /home/mirage/mirage-skeleton/xen/static_website+ip &&
>>> ocamlbuild -use-ocamlfind -tags annot,bin_annot -pkg mirage config.cmxs
>>> www         Using configuration:
>>> /home/mirage/mirage-skeleton/xen/static_website+ip/config.ml
>>> www         1 job [Dispatch.Main]
>>> www         Installing OPAM packages.
>>> www         => opam install --yes crunch cstruct io-page lwt
>>> mirage-console-xen mirage-http mirage-net-xen mirage-types mirage-xen re
>>> [NOTE] Package re is already installed (current version is 1.2.2).
>>> [NOTE] Package mirage-xen is already installed (current version is pinned).
>>> [NOTE] Package mirage-types is already installed (current version is 1.2.0).
>>> [NOTE] Package mirage-net-xen is already installed (current version is
>>> 1.1.2).
>>> [NOTE] Package mirage-http is already installed (current version is 1.1.0).
>>> [NOTE] Package mirage-console-xen is already installed (current version is
>>> 1.0.2).
>>> [NOTE] Package lwt is already installed (current version is 2.4.5).
>>> [NOTE] Package io-page is already installed (current version is 1.1.1).
>>> [NOTE] Package cstruct is already installed (current version is 1.3.1).
>>> [NOTE] Package crunch is already installed (current version is 1.3.0).
>>> www         => ocamlfind query -r -separator ' ' -format %d/%a -predicates
>>> native lwt.syntax cstruct io-page lwt mirage-console-xen mirage-http
>>> mirage-net-xen mirage-types mirage-types.lwt re.str tcpip.dhcpv4 tcpip.ethif
>>> tcpip.tcpv4 tcpip.udpv4
>>> www         => ocamlobjinfo /usr/lib/ocaml/unix.cmxa
>>> /usr/lib/ocaml/bigarray.cmxa /home/mirage/.opam/system/lib/bytes/bytes.cmxa
>>> /home/mirage/.opam/system/lib/ocplib-endian/ocplib_endian.cmxa
>>> /home/mirage/.opam/system/lib/ocplib-endian/bigstring.cmxa
>>> /home/mirage/.opam/system/lib/sexplib/sexplib.cmxa
>>> /home/mirage/.opam/system/lib/cstruct/cstruct.cmxa
>>> /home/mirage/.opam/system/lib/io-page/io_page.cmxa
>>> /home/mirage/.opam/system/lib/lwt/lwt.cmxa
>>> /home/mirage/.opam/system/lib/xenstore/xenstore.cmxa
>>> /home/mirage/.opam/system/lib/xenstore/xenstore_client_lwt.cmxa
>>> /home/mirage/.opam/system/lib/shared-memory-ring/shared_memory_ring.cmxa
>>> /home/mirage/.opam/system/lib/shared-memory-ring/console_ring.cmxa
>>> /home/mirage/.opam/system/lib/shared-memory-ring/xenstore_ring.cmxa
>>> /home/mirage/.opam/system/lib/shared-memory-ring/lwt_shared_memory_ring.cmxa
>>> /home/mirage/.opam/system/lib/mirage-clock-xen/mirage-clock.cmxa
>>> /home/mirage/.opam/system/lib/xen-gnt/xen_gnt.cmxa
>>> /home/mirage/.opam/system/lib/xen-evtchn/xen_evtchn.cmxa
>>> /home/mirage/.opam/system/lib/mirage-xen/oS.cmxa
>>> /home/mirage/.opam/system/lib/mirage-console-xen/mirage-console.cmxa
>>> /home/mirage/.opam/system/lib/re/re.cmxa
>>> /home/mirage/.opam/system/lib/re/re_posix.cmxa
>>> /home/mirage/.opam/system/lib/stringext/stringext.cmxa
>>> /home/mirage/.opam/system/lib/uri/uri.cmxa
>>> /home/mirage/.opam/system/lib/re/re_emacs.cmxa
>>> /home/mirage/.opam/system/lib/uri/services.cmxa
>>> /home/mirage/.opam/system/lib/fieldslib/fieldslib.cmxa
>>> /home/mirage/.opam/system/lib/cohttp/cohttp.cmxa
>>> /home/mirage/.opam/system/lib/conduit/conduit.cmxa
>>> /home/mirage/.opam/system/lib/lwt/lwt-log.cmxa
>>> /home/mirage/.opam/system/lib/lwt/lwt-unix.cmxa
>>> /home/mirage/.opam/system/lib/ssl/ssl.cmxa
>>> /home/mirage/.opam/system/lib/lwt/lwt-ssl.cmxa
>>> /home/mirage/.opam/system/lib/conduit/conduit-lwt.cmxa
>>> /home/mirage/.opam/system/lib/cohttp/cohttp_lwt.cmxa
>>> /home/mirage/.opam/system/lib/ipaddr/ipaddr.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/channel.cmxa
>>> /home/mirage/.opam/system/lib/mirage-http/mirage-http.cmxa
>>> /home/mirage/.opam/system/lib/mirage-net-xen/mirage-net-xen.cmxa
>>> /home/mirage/.opam/system/lib/re/re_str.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/tcpip.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/udpv4.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/dhcpv4.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/ethif.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/ipv4.cmxa
>>> /home/mirage/.opam/system/lib/tcpip/tcpv4.cmxa
>>>
>>> www         => ocamlfind printconf path
>>> www         Generating: main.ml
>>> www         Generating:
>>> /home/mirage/mirage-skeleton/xen/static_website+ip/static1.ml
>>> www         => ocaml-crunch -o static1.ml
>>> /home/mirage/mirage-skeleton/xen/static_website+ip/./htdocs
>>> mirage@cubie0:~/mirage-skeleton/xen/static_website+ip$ make depend
>>> opam install crunch cstruct io-page lwt mirage-console-xen mirage-http
>>> mirage-net-xen mirage-types mirage-xen re --verbose
>>> [NOTE] Package re is already installed (current version is 1.2.2).
>>> [NOTE] Package mirage-xen is already installed (current version is pinned).
>>> [NOTE] Package mirage-types is already installed (current version is 1.2.0).
>>> [NOTE] Package mirage-net-xen is already installed (current version is
>>> 1.1.2).
>>> [NOTE] Package mirage-http is already installed (current version is 1.1.0).
>>> [NOTE] Package mirage-console-xen is already installed (current version is
>>> 1.0.2).
>>> [NOTE] Package lwt is already installed (current version is 2.4.5).
>>> [NOTE] Package io-page is already installed (current version is 1.1.1).
>>> [NOTE] Package cstruct is already installed (current version is 1.3.1).
>>> [NOTE] Package crunch is already installed (current version is 1.3.0).
>>> mirage@cubie0:~/mirage-skeleton/xen/static_website+ip$ make
>>> ocamlbuild -classic-display -use-ocamlfind -pkgs
>>> lwt.syntax,cstruct,io-page,lwt,mirage-console-xen,mirage-http,mirage-net-xen,mirage-types,mirage-types.lwt,re.str,tcpip.dhcpv4,tcpip.ethif,tcpip.tcpv4,tcpip.udpv4
>>> -tags "syntax(camlp4o),annot,bin_annot,strict_sequence,principal" -cflag -g
>>> -lflags -g,-linkpkg,-dontlink,unix main.native.o
>>> ocamlfind ocamldep -package tcpip.udpv4 -package tcpip.tcpv4 -package
>>> tcpip.ethif -package tcpip.dhcpv4 -package re.str -package mirage-types.lwt
>>> -package mirage-types -package mirage-net-xen -package mirage-http -package
>>> mirage-console-xen -package lwt -package io-page -package cstruct -package
>>> lwt.syntax -syntax camlp4o -modules main.ml > main.ml.depends
>>> ocamlfind ocamldep -package tcpip.udpv4 -package tcpip.tcpv4 -package
>>> tcpip.ethif -package tcpip.dhcpv4 -package re.str -package mirage-types.lwt
>>> -package mirage-types -package mirage-net-xen -package mirage-http -package
>>> mirage-console-xen -package lwt -package io-page -package cstruct -package
>>> lwt.syntax -syntax camlp4o -modules dispatch.ml > dispatch.ml.depends
>>> ocamlfind ocamldep -package tcpip.udpv4 -package tcpip.tcpv4 -package
>>> tcpip.ethif -package tcpip.dhcpv4 -package re.str -package mirage-types.lwt
>>> -package mirage-types -package mirage-net-xen -package mirage-http -package
>>> mirage-console-xen -package lwt -package io-page -package cstruct -package
>>> lwt.syntax -syntax camlp4o -modules static1.mli > static1.mli.depends
>>> ocamlfind ocamlc -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o dispatch.cmo dispatch.ml
>>> + ocamlfind ocamlc -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o dispatch.cmo dispatch.ml
>>> File "dispatch.ml", line 89, characters 8-16:
>>> Warning 26: unused variable callback.
>>> File "dispatch.ml", line 94, characters 8-19:
>>> Warning 26: unused variable conn_closed.
>>> ocamlfind ocamlc -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o static1.cmi static1.mli
>>> ocamlfind ocamlc -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o main.cmo main.ml
>>> ocamlfind ocamldep -package tcpip.udpv4 -package tcpip.tcpv4 -package
>>> tcpip.ethif -package tcpip.dhcpv4 -package re.str -package mirage-types.lwt
>>> -package mirage-types -package mirage-net-xen -package mirage-http -package
>>> mirage-console-xen -package lwt -package io-page -package cstruct -package
>>> lwt.syntax -syntax camlp4o -modules static1.ml > static1.ml.depends
>>> ocamlfind ocamlopt -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o dispatch.cmx dispatch.ml
>>> + ocamlfind ocamlopt -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o dispatch.cmx dispatch.ml
>>> File "dispatch.ml", line 89, characters 8-16:
>>> Warning 26: unused variable callback.
>>> File "dispatch.ml", line 94, characters 8-19:
>>> Warning 26: unused variable conn_closed.
>>> ocamlfind ocamlopt -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o static1.cmx static1.ml
>>> ocamlfind ocamlopt -c -g -annot -bin-annot -principal -strict-sequence
>>> -package tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package
>>> tcpip.dhcpv4 -package re.str -package mirage-types.lwt -package mirage-types
>>> -package mirage-net-xen -package mirage-http -package mirage-console-xen
>>> -package lwt -package io-page -package cstruct -package lwt.syntax -syntax
>>> camlp4o -o main.cmx main.ml
>>> ocamlfind ocamlopt -g -linkpkg -dontlink unix -output-obj -package
>>> tcpip.udpv4 -package tcpip.tcpv4 -package tcpip.ethif -package tcpip.dhcpv4
>>> -package re.str -package mirage-types.lwt -package mirage-types -package
>>> mirage-net-xen -package mirage-http -package mirage-console-xen -package lwt
>>> -package io-page -package cstruct -package lwt.syntax -syntax camlp4o
>>> dispatch.cmx static1.cmx main.cmx -o main.native.o
>>> pkg-config --print-errors --exists openlibm 'libminios-xen >= 0.2'
>>> ld -d -static -nostdlib --start-group \
>>>      $(pkg-config --static --libs openlibm 'libminios-xen >= 0.2') \
>>>      _build/main.native.o
>>> /home/mirage/.opam/system/lib/mirage-xen/libocaml.a \
>>>      /home/mirage/.opam/system/lib/mirage-xen/libxencaml.a --end-group \
>>>      -L/usr/lib/ocaml \
>>>      -lbigarray \
>>>      -L/home/mirage/.opam/system/lib/cstruct \
>>>      -lcstruct_stubs \
>>>      -L/home/mirage/.opam/system/lib/shared-memory-ring \
>>>      -lshared_memory_ring_stubs \
>>>      -L/home/mirage/.opam/system/lib/lwt \
>>>      -llwt-unix_stubs \
>>>      -lpthread \
>>>      -L/home/mirage/.opam/system/lib/ssl \
>>>      -lssl_stubs \
>>>      -lcrypto \
>>>      -lssl \
>>>      -L/home/mirage/.opam/system/lib/tcpip \
>>>      -ltcpip_stubs \
>>>      /usr/lib/gcc/arm-linux-gnueabihf/4.8/libgcc.a \
>>>      -o mir-www.elf
>>> ld: cannot find -lpthread
>>> ld: cannot find -lcrypto
>>> ld: cannot find -lssl
>>> make: *** [build] Error 1
>>
>> You can just remove these manually from the Makefile for now.
>>
>> The other problem you may hit is running out of stack space on the
>> larger examples. The Git version of Mini-OS extends the old 16 KB
>> stack by 1MB, or you can use the work-around here:
>>
>> https://github.com/mirage/mirage/issues/274
>>
>>
>> --
>> Dr Thomas Leonard        http://0install.net/
>> GPG: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1
>> GPG: DA98 25AE CAD0 8975 7CDA  BD8E 0713 3F96 CA74 D8BA
>>
>



-- 
Dr Thomas Leonard        http://0install.net/
GPG: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1
GPG: DA98 25AE CAD0 8975 7CDA  BD8E 0713 3F96 CA74 D8BA

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.