Re: Compilation problem with 3.3.7 and trunk

Theodore Hong <[email protected]> Wed, 24 Aug 2011 11:57:22 +0100
Newsgroups gmane.comp.lang.ocaml.lib.net.devel
Message-ID <CAEUB3pGHHJws8DzFkX+0gDbEh20hUoJh+vfZkt9OWpoPGjPqPg@mail.gmail.com>
fyi, compilation also seems to fail for a different reason with Ocaml 3.11.1:

ocamlfind ocamlc -g  -I ../../src/equeue -I ../../src/rpc -I
../../src/netstring -I ../../src/netsys -I ../../src/netplex -I
../../src/netcamlbox -package "unix"  -c  netmcore_heap.ml
File "netmcore_heap.ml", line 776, characters 1-21:
Error: Unbound value Obj.set_double_field
make[1]: *** [netmcore_heap.cmo] Error 2
make[1]: Leaving directory
`/usr/scratch/rupert/thong/tmp/lib-ocamlnet2/code/src/netmulticore'
make: *** [all] Error 2
penny:~/scratch/tmp/lib-ocamlnet2/code$ ocaml -version
The Objective Caml toplevel, version 3.11.1

theo


On Tue, Aug 23, 2011 at 6:29 PM, Gerd Stolpmann <[email protected]> wrote:
> Fixed in svn. There were some typing stuff that only built with ocaml
> 3.12, and adding a few type hints fixed it.
>
> An orderly release will follow in the next days.
>
> Gerd
>
> Am Dienstag, den 23.08.2011, 14:08 +0100 schrieb Theodore Hong:
>> Hi, I can't compile ocamlnet 3.3.7 - I get:
>>
>>
>> make[1]: Entering directory `/tmp/ocamlnet-3.3.7/src/netstring'
>> ocamlfind ocamlc -g  -I ../../src/netsys -package "pcre bigarray unix"
>>  -c  netglob.ml
>> File "netglob.ml", line 1, characters 0-1:
>> Error: The implementation netglob.ml
>>        does not match the interface netglob.cmi:
>>        Class declarations do not match:
>>          class of_stream_fs :
>>            < copy : [> Netfs.copy_flag ] list -> string -> string -> unit;
>>              mkdir : [> Netfs.mkdir_flag ] list -> string -> unit;
>>              nominal_dot_dot : bool;
>>              path_encoding : [< Netconversion.encoding ] option;
>>              path_exclusions : (int * int) list;
>>              read : [> Netfs.read_flag ] list ->
>>                     string -> #Netchannels.in_obj_channel;
>>              readdir : [> Netfs.readdir_flag ] list -> string -> string list;
>>              readlink : [> Netfs.readlink_flag ] list -> string -> string;
>>              remove : [> Netfs.remove_flag ] list -> string -> unit;
>>              rename : [> Netfs.rename_flag ] list -> string -> string -> unit;
>>              rmdir : [> Netfs.rmdir_flag ] list -> string -> unit;
>>              size : [> Netfs.size_flag ] list -> string -> int64;
>>              symlink : [> Netfs.symlink_flag ] list ->
>>                        string -> string -> unit;
>>              test : [> Netfs.test_flag ] list ->
>>                     string -> [> Netfs.test_type ] -> bool;
>>              test_list : [> Netfs.test_flag ] list ->
>>                          string -> [> Netfs.test_type ] list -> bool list;
>>              write : [> Netfs.write_flag ] list ->
>>                      string -> #Netchannels.out_obj_channel;
>>              .. > ->
>>            of_dual_stream_fs
>>        does not match
>>          class of_stream_fs : #Netfs.stream_fs -> glob_fsys
>>        A parameter has type
>>          < copy : ([> Netfs.copy_flag ] as 'a) list ->
>>                   string -> string -> unit;
>>            mkdir : [> Netfs.mkdir_flag ] list -> string -> unit;
>>            nominal_dot_dot : bool;
>>            path_encoding : [< Netconversion.encoding ] option;
>>            path_exclusions : (int * int) list;
>>            read : [> Netfs.read_flag ] list ->
>>                   string -> #Netchannels.in_obj_channel;
>>            readdir : [> Netfs.readdir_flag ] list -> string -> string list;
>>            readlink : [> Netfs.readlink_flag ] list -> string -> string;
>>            remove : [> Netfs.remove_flag ] list -> string -> unit;
>>            rename : [> Netfs.rename_flag ] list -> string -> string -> unit;
>>            rmdir : [> Netfs.rmdir_flag ] list -> string -> unit;
>>            size : [> Netfs.size_flag ] list -> string -> int64;
>>            symlink : [> Netfs.symlink_flag ] list -> string -> string -> unit;
>>            test : [> Netfs.test_flag ] list ->
>>                   string -> [> Netfs.test_type ] -> bool;
>>            test_list : [> Netfs.test_flag ] list ->
>>                        string -> [> Netfs.test_type ] list -> bool list;
>>            write : [> Netfs.write_flag ] list ->
>>                    string -> #Netchannels.out_obj_channel;
>>            .. >
>>        but is expected to have type
>>          #Netfs.stream_fs as 'b =
>>            < copy : Netfs.copy_flag list -> string -> string -> unit;
>>              mkdir : Netfs.mkdir_flag list -> string -> unit;
>>              nominal_dot_dot : bool;
>>              path_encoding : Netconversion.encoding option;
>>              path_exclusions : (int * int) list;
>>              read : Netfs.read_flag list ->
>>                     string -> Netchannels.in_obj_channel;
>>              readdir : Netfs.readdir_flag list -> string -> string list;
>>              readlink : Netfs.readlink_flag list -> string -> string;
>>              remove : Netfs.remove_flag list -> string -> unit;
>>              rename : Netfs.rename_flag list -> string -> string -> unit;
>>              rmdir : Netfs.rmdir_flag list -> string -> unit;
>>              size : Netfs.size_flag list -> string -> int64;
>>              symlink : Netfs.symlink_flag list -> string -> string -> unit;
>>              test : Netfs.test_flag list -> string -> Netfs.test_type -> bool;
>>              test_list : Netfs.test_flag list ->
>>                          string -> Netfs.test_type list -> bool list;
>>              write : Netfs.write_flag list ->
>>                      string -> Netchannels.out_obj_channel;
>>              .. >
>>        Type 'a = [> `Dummy ] is not compatible with type
>>          Netfs.copy_flag = [ `Dummy ]
>> make[1]: *** [netglob.cmo] Error 2
>> make[1]: Leaving directory `/tmp/ocamlnet-3.3.7/src/netstring'
>> make: *** [all] Error 2
>>
>>
>> Any ideas?  The same problem occurs in trunk as well.  This is OCaml
>> 3.11.2 on Ubuntu Lucid.
>>
>> thanks,
>> theo
>>
>> ------------------------------------------------------------------------------
>> Get a FREE DOWNLOAD! and learn more about uberSVN rich system,
>> user administration capabilities and model configuration. Take
>> the hassle out of deploying and managing Subversion and the
>> tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2
>> _______________________________________________
>> Ocamlnet-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/ocamlnet-devel
>>
>
> --
> ------------------------------------------------------------
> Gerd Stolpmann, Darmstadt, Germany    [email protected]
> Creator of GODI and camlcity.org.
> Contact details:        http://www.camlcity.org/contact.html
> Company homepage:       http://www.gerd-stolpmann.de
> *** Searching for new projects! Need consulting for system
> *** programming in Ocaml? Gerd Stolpmann can help you.
> ------------------------------------------------------------
>
>

------------------------------------------------------------------------------
EMC VNX: the world's simplest storage, starting under $10K
The only unified storage solution that offers unified management 
Up to 160% more powerful than alternatives and 25% more efficient. 
Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev