[SOLVED] make unison 2.4 on debian squeeze throws implementation/interface mismatch
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Error: The implementation /home/gideon/unison-2.40.16/update.ml
does not match the interface update.cmi:
Modules do not match:
sig
type key = Name.t
type 'a t = 'a MyMap.Make(Name).t
val empty : 'a t
val is_empty : 'a t -> bool
val add : key -> 'a -> 'a t -> 'a t
val find : key -> 'a t -> 'a
val findi : key -> 'a t -> key * 'a
val remove : key -> 'a t -> 'a t
val mem : key -> 'a t -> bool
val iter : (key -> 'a -> unit) -> 'a t -> unit
val map : ('a -> 'b) -> 'a t -> 'b t
val mapi : (key -> 'a -> 'b) -> 'a t -> 'b t
val mapii : (key -> 'a -> key * 'b) -> 'a t -> 'b t
val fold : (key -> 'a -> 'b -> 'b) -> 'a t -> 'b -> 'b
val compare : ('a -> 'a -> int) -> 'a t -> 'a t -> int
val equal : ('a -> 'a -> bool) -> 'a t -> 'a t -> bool
val validate :
'a t -> [ `Duplicate of key | `Invalid of key * key | `Ok ]
end
is not included in
sig
type key = Name.t
type +'a t
val empty : 'a t
val is_empty : 'a t -> bool
val mem : key -> 'a t -> bool
val add : key -> 'a -> 'a t -> 'a t
val singleton : key -> 'a -> 'a t
val remove : key -> 'a t -> 'a t
val merge :
(key -> 'a option -> 'b option -> 'c option) ->
'a t -> 'b t -> 'c t
val compare : ('a -> 'a -> int) -> 'a t -> 'a t -> int
val equal : ('a -> 'a -> bool) -> 'a t -> 'a t -> bool
val iter : (key -> 'a -> unit) -> 'a t -> unit
val fold : (key -> 'a -> 'b -> 'b) -> 'a t -> 'b -> 'b
val for_all : (key -> 'a -> bool) -> 'a t -> bool
val exists : (key -> 'a -> bool) -> 'a t -> bool
val filter : (key -> 'a -> bool) -> 'a t -> 'a t
val partition : (key -> 'a -> bool) -> 'a t -> 'a t * 'a t
val cardinal : 'a t -> int
val bindings : 'a t -> (key * 'a) list
val min_binding : 'a t -> key * 'a
val max_binding : 'a t -> key * 'a
val choose : 'a t -> key * 'a
val split : key -> 'a t -> 'a t * 'a option * 'a t
val find : key -> 'a t -> 'a
val map : ('a -> 'b) -> 'a t -> 'b t
val mapi : (key -> 'a -> 'b) -> 'a t -> 'b t
end
The field `split' is required but not provided
The field `choose' is required but not provided
The field `max_binding' is required but not provided
The field `min_binding' is required but not provided
The field `bindings' is required but not provided
The field `cardinal' is required but not provided
The field `partition' is required but not provided
The field `filter' is required but not provided
The field `exists' is required but not provided
The field `for_all' is required but not provided
The field `merge' is required but not provided
The field `singleton' is required but not provided
make: *** [update.cmx] Error 2
I've already successfully installed this on my mac so I'm not entirely sure what's going on here? I'm also a little bit out of my comfort zone with ocamlc.
I can't help with that, but is there any reason you don't just use the one from the main Debian repositories? Is there a killer feature in 2.40.16 that you need?
I can't help with that, but is there any reason you don't just use the one from the main Debian repositories? Is there a killer feature in 2.40.16 that you need?
I have 2.40.16 on my mac because that is the version which has compilation instructions for mac (so I assumed that that would be the only one that would really work on a mac).
Unison was being a little bit stupid and not liking having 2.32 on my server. I'll just try and downgrade both and see what happens.
I also had gfarrell's original problem. It turns out that version 3.12 of Ocaml, released 2010-08-02, gives the error above. The previous version, 3.11.2, released on 2010-01-20, does not give this error :-).
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.