[Unison-hackers] Mac update

Alan Shutko ats at acm.org
Thu Jul 17 12:12:55 EDT 2014


Thanks. 

Could you send me the output of 

ocamlopt -config



> On Jul 17, 2014, at 10:51 AM, Marcus Crestani <crestani at informatik.uni-tuebingen.de> wrote:
> 
>>>>>> "AS" == Alan Shutko <ats at acm.org> writes:
> AS> Marcus, how is your build setup? Is it possible there is a difference
> AS> between the way certain libraries were built? It seems like we might
> AS> get a SIGILL as shown in your crash if we have some parts compiled for
> AS> 32-bit and others for 64-bit (or other arch differences).  In
> AS> UISTYLE=text, all the build arguments are controlled by the
> AS> makefile. In UISTYLE=uimac* the flags for compiling the objective C
> AS> stuff is in the xcode project.
> 
> otool -L /Applications/Unison.app/Contents/MacOS/Unison shows that the
> binary is only linked to Frameworks or dylibs that come with OS X, no
> libraries that I have custom built:
> 
> 	/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 20.0.0)
> 	/System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 55471.14.0)
> 	/System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling (compatibility version 1.0.0, current version 10.0.0)
> 	@executable_path/../Frameworks/Growl.framework/Versions/A/Growl (compatibility version 1.0.0, current version 1.0.0)
> 	/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1056.13.0)
> 	/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
> 	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
> 	/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1265.19.0)
> 	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.14.0)
> 
> These built-in libraries are all fat binaries:
> 
> # otool -L /Applications/Unison.app/Contents/MacOS/Unison | cut -d ' ' -f 1 | grep -v "^Unison" | xargs file
> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa:                         Mach-O universal binary with 2 architectures
> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (for architecture i386):	Mach-O dynamically linked shared library i386
> /System/Library/Frameworks/Security.framework/Versions/A/Security:                   Mach-O universal binary with 2 architectures
> /System/Library/Frameworks/Security.framework/Versions/A/Security (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /System/Library/Frameworks/Security.framework/Versions/A/Security (for architecture i386):	Mach-O dynamically linked shared library i386
> /System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling: Mach-O universal binary with 2 architectures
> /System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling (for architecture i386):	Mach-O dynamically linked shared library i386
> @executable_path/../Frameworks/Growl.framework/Versions/A/Growl:                     cannot open `@executable_path/../Frameworks/Growl.framework/Versions/A/Growl' (No such file or directory)
> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation:               Mach-O universal binary with 2 architectures
> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (for architecture i386):	Mach-O dynamically linked shared library i386
> /usr/lib/libobjc.A.dylib:                                                            Mach-O universal binary with 2 architectures
> /usr/lib/libobjc.A.dylib (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /usr/lib/libobjc.A.dylib (for architecture i386):	Mach-O dynamically linked shared library i386
> /usr/lib/libSystem.B.dylib:                                                          Mach-O universal binary with 2 architectures
> /usr/lib/libSystem.B.dylib (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /usr/lib/libSystem.B.dylib (for architecture i386):	Mach-O dynamically linked shared library i386
> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit:                       Mach-O universal binary with 2 architectures
> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (for architecture i386):	Mach-O dynamically linked shared library i386
> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation:       Mach-O universal binary with 2 architectures
> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (for architecture i386):	Mach-O dynamically linked shared library i386
> 
> The path to Growl in the above output is broken.  But it is also a fat
> binary:
> 
> # file /Applications/Unison.app/Contents/Frameworks/Growl.framework/Growl 
> /Applications/Unison.app/Contents/Frameworks/Growl.framework/Growl: Mach-O universal binary with 3 architectures
> /Applications/Unison.app/Contents/Frameworks/Growl.framework/Growl (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
> /Applications/Unison.app/Contents/Frameworks/Growl.framework/Growl (for architecture i386):	Mach-O dynamically linked shared library i386
> /Applications/Unison.app/Contents/Frameworks/Growl.framework/Growl (for architecture ppc):	Mach-O dynamically linked shared library ppc
> 
> AS> Three questions: could you send me a log of your compilation?  
> 
> Sure, it is attached.
> 
> AS> Are you using the new version on both the local and remote system?
> 
> I always use the new version on both systems (otherwise, Unison would
> fail with a version mismatch, I guess).
> 
> AS> If so, is it crashing on the local system, the remote, or both?
> 
> It crashes only on the local system.
> 
> Thanks for looking into it, hope this helps,
> Marcus
> 
> <build.log>



More information about the Unison-hackers mailing list