Re: Mac update

Marcus Crestani <[email protected]>
Newsgroups gmane.network.unison.devel
Message-ID <[email protected]>
>>>>>"AS" == Alan Shutko <[email protected]> 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

_______________________________________________
Unison-hackers mailing list
[email protected]
http://lists.seas.upenn.edu/mailman/listinfo/unison-hackers
build.log (application/octet-stream, 149.4 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.