[MacPorts] #19975: Ocaml 3.11.0 breaks Unison "ssh://"
#19975: Ocaml 3.11.0 breaks Unison "ssh://" -----------------------------------+---------------------------------------- Reporter: denis.laplante@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: | Port: ocaml , unison -----------------------------------+---------------------------------------- The major symptom was message 'Some error in create_session child' when trying to synchronize over ssh. The fix is to revert to ocaml version 3.10.2 From: Jerome Vouillon <Jerome.Vouillon@..> Date: June 13, 2009 12:47:20 AM PDT (CA) To: Denis Laplante <denis.laplante@..> Subject: Re: 'Some error in create_session child' DL> Bonjour DL> DL> I get this message every time my MacPorts install of unison DL> @2.27.57_0+aqua DL> tries to start ssh. In fact "ls -lu /usr/bin/ssh" shows that ssh never DL> gets loaded. DL> DL> Dtruss ( sudo /usr/bin/dtruss -f Unison -debug verbose mac-via-ssh ) DL> shows that execve() after fork() fails with error 45 ( ENOSUP Not DL> supported). JV> This is a bug in OCaml 3.11.0. You should recompile Unison either JV> with OCaml 3.11.1 or an older version of OCaml. JV> JV> Thanks for this detailed report! With ocaml 3.11.1 the following error occurs at compile time: [ abbreviation: {} for "local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_unison/work/unison-2.27.57" ] /Developer/usr/bin/gcc-4.0 -arch i386 -L/opt/{}/uimacnew/build/Default -F/opt/{}/uimacnew/build/Default -F/opt/{}/uimacnew -filelist /opt/{}/uimacnew/build/uimac.build/Default/uimac.build/Objects- normal/i386/Unison.LinkFileList -mmacosx-version-min=10.5 /opt/{}/uimacnew /../unison-blob.o -L/opt/local/lib/ocaml -lunix -lthreadsnat -lstr -lasmrun -framework Cocoa -framework Security -framework Growl -framework ExceptionHandling -o /opt/{}/uimacnew/build/Default/Unison.app/Contents/MacOS/Unison Undefined symbols: "_caml_apply2", referenced from: _caml_callback2_exn in libasmrun.a(i386.o) "_caml_apply3", referenced from: _caml_callback3_exn in libasmrun.a(i386.o) ld: symbol(s) not found collect2: ld returned 1 exit status -- Ticket URL: <http://trac.macports.org/ticket/19975> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19975: Ocaml 3.11.0 breaks Unison "ssh://" -----------------------------------+---------------------------------------- Reporter: denis.laplante@… | Owner: pguyot@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: | Port: ocaml , unison -----------------------------------+---------------------------------------- Changes (by macsforever2000@…): * cc: eridius@… (added) * owner: macports-tickets@… => pguyot@… Old description:
The major symptom was message 'Some error in create_session child' when trying to synchronize over ssh. The fix is to revert to ocaml version 3.10.2
From: Jerome Vouillon <Jerome.Vouillon@..> Date: June 13, 2009 12:47:20 AM PDT (CA) To: Denis Laplante <denis.laplante@..> Subject: Re: 'Some error in create_session child'
DL> Bonjour DL> DL> I get this message every time my MacPorts install of unison DL> @2.27.57_0+aqua DL> tries to start ssh. In fact "ls -lu /usr/bin/ssh" shows that ssh never DL> gets loaded. DL> DL> Dtruss ( sudo /usr/bin/dtruss -f Unison -debug verbose mac-via-ssh ) DL> shows that execve() after fork() fails with error 45 ( ENOSUP Not DL> supported).
JV> This is a bug in OCaml 3.11.0. You should recompile Unison either JV> with OCaml 3.11.1 or an older version of OCaml. JV> JV> Thanks for this detailed report!
With ocaml 3.11.1 the following error occurs at compile time: [ abbreviation: {} for "local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_unison/work/unison-2.27.57" ] /Developer/usr/bin/gcc-4.0 -arch i386 -L/opt/{}/uimacnew/build/Default -F/opt/{}/uimacnew/build/Default -F/opt/{}/uimacnew -filelist /opt/{}/uimacnew/build/uimac.build/Default/uimac.build/Objects- normal/i386/Unison.LinkFileList -mmacosx-version-min=10.5 /opt/{}/uimacnew/../unison-blob.o -L/opt/local/lib/ocaml -lunix -lthreadsnat -lstr -lasmrun -framework Cocoa -framework Security -framework Growl -framework ExceptionHandling -o /opt/{}/uimacnew/build/Default/Unison.app/Contents/MacOS/Unison Undefined symbols: "_caml_apply2", referenced from: _caml_callback2_exn in libasmrun.a(i386.o) "_caml_apply3", referenced from: _caml_callback3_exn in libasmrun.a(i386.o) ld: symbol(s) not found collect2: ld returned 1 exit status
New description: The major symptom was message 'Some error in create_session child' when trying to synchronize over ssh. The fix is to revert to ocaml version 3.10.2 {{{ From: Jerome Vouillon <Jerome.Vouillon@..> Date: June 13, 2009 12:47:20 AM PDT (CA) To: Denis Laplante <denis.laplante@..> Subject: Re: 'Some error in create_session child' DL> Bonjour DL> DL> I get this message every time my MacPorts install of unison DL> @2.27.57_0+aqua DL> tries to start ssh. In fact "ls -lu /usr/bin/ssh" shows that ssh never DL> gets loaded. DL> DL> Dtruss ( sudo /usr/bin/dtruss -f Unison -debug verbose mac-via-ssh ) DL> shows that execve() after fork() fails with error 45 ( ENOSUP Not DL> supported). JV> This is a bug in OCaml 3.11.0. You should recompile Unison either JV> with OCaml 3.11.1 or an older version of OCaml. JV> JV> Thanks for this detailed report! }}} With ocaml 3.11.1 the following error occurs at compile time: {{{ [ abbreviation: {} for "local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_unison/work/unison-2.27.57" ] /Developer/usr/bin/gcc-4.0 -arch i386 -L/opt/{}/uimacnew/build/Default -F/opt/{}/uimacnew/build/Default -F/opt/{}/uimacnew -filelist /opt/{}/uimacnew/build/uimac.build/Default/uimac.build/Objects- normal/i386/Unison.LinkFileList -mmacosx-version-min=10.5 /opt/{}/uimacnew /../unison-blob.o -L/opt/local/lib/ocaml -lunix -lthreadsnat -lstr -lasmrun -framework Cocoa -framework Security -framework Growl -framework ExceptionHandling -o /opt/{}/uimacnew/build/Default/Unison.app/Contents/MacOS/Unison Undefined symbols: "_caml_apply2", referenced from: _caml_callback2_exn in libasmrun.a(i386.o) "_caml_apply3", referenced from: _caml_callback3_exn in libasmrun.a(i386.o) ld: symbol(s) not found collect2: ld returned 1 exit status }}} -- -- Ticket URL: <http://trac.macports.org/ticket/19975#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19975: Ocaml 3.11.0 breaks Unison "ssh://" -----------------------------------+---------------------------------------- Reporter: denis.laplante@… | Owner: pguyot@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: | Port: ocaml , unison -----------------------------------+---------------------------------------- Comment(by julio.lopez@…): It seems that the unison port (and perhaps other ocaml -dependent ports) does not appropriately list its dependencies. I reverted back to ocaml 3.10.2 and still had undefined symbols. See below. After installing caml-ocamlnet, caml-extlib and their dependencies I was able to build and use unison with ocaml 3.10.2. I have not tried this with ocaml 3.11.1 {{{ Command output: Undefined symbols: "_unix_setsockopt", referenced from: _camlUnix__213 in unison-blob.o _unix_setsockopt$non_lazy_ptr in unison-blob.o "_caml_backtrace_status", referenced from: _camlPrintexc__39 in unison-blob.o _caml_backtrace_status$non_lazy_ptr in unison-blob.o "_caml_get_exception_backtrace", referenced from: _camlPrintexc__39 in unison-blob.o _caml_get_exception_backtrace$non_lazy_ptr in unison-blob.o "_caml_apply2", referenced from: _caml_callback2_exn in libasmrun.a(i386.o) "_caml_apply3", referenced from: _caml_callback3_exn in libasmrun.a(i386.o) "_caml_record_backtrace", referenced from: _camlPrintexc__39 in unison-blob.o _caml_record_backtrace$non_lazy_ptr in unison-blob.o "_unix_getsockopt", referenced from: _camlUnix__213 in unison-blob.o _unix_getsockopt$non_lazy_ptr in unison-blob.o ld: symbol(s) not found collect2: ld returned 1 exit status ** BUILD FAILED ** }}} -- Ticket URL: <http://trac.macports.org/ticket/19975#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19975: Ocaml 3.11.0 breaks Unison "ssh://" -----------------------------------+---------------------------------------- Reporter: denis.laplante@… | Owner: pguyot@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: | Port: ocaml , unison -----------------------------------+---------------------------------------- Comment(by mason.kramer@…): Hi, I'm encountering the same bugs. 1. Unison compiled against Ocaml 3.11.1 cannot connect via ssh:// and it doesn't seem to be dependant on which version of Unison is used. 2. In the second case aqua unison cannot build with the listed dependencies of 3.11.1. I tried to install the mentioned dependencies in this ticket (caml-ocamlnet and caml-extlib) and still couldn't build it on 3.11.1. In the end I just omitted the aqua build and built with +x11 only. 3. I don't have ocaml 3.10.2 anymore and am unable to revert to it. I'm unable or unwilling to compile ocaml and unison from source so unison is simply dead for me. Is there something I can do? -- Ticket URL: <http://trac.macports.org/ticket/19975#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#19975: Ocaml 3.11.0 breaks Unison "ssh://" -----------------------------------+---------------------------------------- Reporter: denis.laplante@… | Owner: mww@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.1 Keywords: | Port: ocaml , unison -----------------------------------+---------------------------------------- Changes (by jmr@…): * owner: pguyot@… => mww@… -- Ticket URL: <https://trac.macports.org/ticket/19975#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts