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

Re: Build errors



just out of curiosity for the node.js and unix backend, how do they
handle the OS.Netif module since they don't expose raw socket
functionality?

On 12 April 2012 14:17, Anil Madhavapeddy <anil@xxxxxxxxxx> wrote:
> Ha! This fails for a fun reason.
>
> The master/ branch still has the work-in-progress Javascript backend, but it
> is only activated when js_of_ocaml is installed (and it is not currently
> installed on my test machines). ÂIn the Node case, we need bindings for the
> OS.* modules (specifically, Netif for Openflow), and hence the build
> failure. ÂIn order for Node to work correctly, we need:
>
> - To patch js_of_ocaml to support Javascript Buffers as present in Node.js.
> Raphael had a few patches, but not finished. ÂThis is because Javascript
> strings are immutable, whereas OCaml strings and buffers are mutable (and so
> wrapped as JS objects).
> - Figure out the latest Websocket story (I have avsm/ocaml-socketio on
> Github which started implementing it).
> - Look at how WebStorage works these days (SQL? Key/Value?)
>
> I'm actually working in the slim/ branch of the tree as part of a
> benchmarking effort at the moment, where I have removed all of the Node
> code, and several of the higher-level protocols such as HTTP, leaving just
> the bare-bones network stack up to TCP. ÂThe plan is to use this as a
> baseline, and add external library support for stuff like DNS, XMPP, HTTP
> and so forth. ÂI've got some interesting early benchmark results which I'll
> send to the list separately later.
>
> For master/, you can edit lib/Makefile to turn off Node (I've just pushed a
> change to do this to my tree)
>
> -anil
>
> On 12 Apr 2012, at 13:53, Sebastian Probst Eide wrote:
>
> I am trying to build mirage on my xen box.
>
> I am on Ubuntu 11.10, kernel 3.something
> I have OCaml version 3.12.1 installed from source.
>
> I am using mirage from avsm/mirage
>
> When running my friend make, I get:
>
> ...
> cp openflow/openflow.mli std/openflow.mli
> /usr/local/bin/ocamldep.opt -pp 'camlp4o.opt -I ../../../syntax/_build
> str.cmxs pa_mirage.cmxs -cow-no-open -lwt-debug' -modules std/openflow.mli >
> std/openflow.mli.depends
> /usr/local/bin/ocamlc.opt -c -nostdlib -annot -g -pp 'camlp4o.opt -I
> ../../../syntax/_build str.cmxs pa_mirage.cmxs -cow-no-open -lwt-debug' -I
> std -o std/openflow.cmi std/openflow.mli
> + /usr/local/bin/ocamlc.opt -c -nostdlib -annot -g -pp 'camlp4o.opt -I
> ../../../syntax/_build str.cmxs pa_mirage.cmxs -cow-no-open -lwt-debug' -I
> std -o std/openflow.cmi std/openflow.mli
> File "openflow/switch.mli", line 711, characters 23-34:
> Error: Unbound module OS.Netif
> Command exited with code 2.
> make[1]: *** [node] Error 10
> make[1]: Leaving directory `/home/xen/code/mirage/lib'
> make: *** [all] Error 2
>
> Any ideas?
>
> Thanks!
>
> All the best,
> Sebastian
>
> --------------------
>
> Things I have installed:
>
> findlib-1.2.8
> js_of_ocaml-1.1.1
> lwt-2.3.2
> ocaml-3.12.1
>
>



-- 
Charalampos Rotsos
PhD student
The University of Cambridge
Computer Laboratory
William Gates Building
JJ Thomson Avenue
Cambridge
CB3 0FD

Phone: +44-(0) 1223 767032
Email: cr409@xxxxxxxxxxxx



 


Rackspace

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