Root crashes when opening a saved TCanvas

libCling … Does that one definitely come with ROOT 5 ?

No :slight_smile:. In v5, the equivalent in libCint.so.

Cheers,
Philippe.

So, we now need to understand why libCore.5.so is linked against /usr/local/lib/libstdc++.6.dylib.

What is the link line for libCore v5? (To see just rm libCore*so from the build directory and re-run make).

Cheers,
Philippe.

Hah! Okay. :slight_smile: Well, there are no surprises with libCint.so either, so that’s good:

/Users/spiffyzha/Packages/root5/lib$ otool -L libCint.so libCint.so: /Users/spiffyzha/Packages/root5/lib/libCint.5.so (compatibility version 5.0.0, current version 5.34.34) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0)

At any rate, here’s the output when I delete libCore*.so from the build directory and run make again:

[code]/Users/spiffyzha/Desktop/root$ make
clang++ -dynamiclib -single_module -Wl,-dead_strip_dylibs -install_name /Users/spiffyzha/Packages/root5/lib/libCore.5.so -g -m64 -mmacosx-version-min=10.8 -o lib/libCore.5.34.so core/base/src/InitGui.o core/base/src/ManualBase4.o core/base/src/Match.o core/base/src/String.o core/base/src/Stringio.o core/base/src/TApplication.o core/base/src/TApplicationImp.o core/base/src/TAtt3D.o core/base/src/TAttAxis.o core/base/src/TAttBBox.o core/base/src/TAttBBox2D.o core/base/src/TAttFill.o core/base/src/TAttLine.o core/base/src/TAttMarker.o core/base/src/TAttPad.o core/base/src/TAttText.o core/base/src/TBase64.o core/base/src/TBenchmark.o core/base/src/TBrowser.o core/base/src/TBrowserImp.o core/base/src/TBuffer.o core/base/src/TBuffer3D.o core/base/src/TCanvasImp.o core/base/src/TColor.o core/base/src/TColorGradient.o core/base/src/TContextMenu.o core/base/src/TContextMenuImp.o core/base/src/TControlBarImp.o core/base/src/TDatime.o core/base/src/TDirectory.o core/base/src/TEnv.o core/base/src/TError.o core/base/src/TException.o core/base/src/TExec.o core/base/src/TFileCollection.o core/base/src/TFileInfo.o core/base/src/TFolder.o core/base/src/TGuiFactory.o core/base/src/TInetAddress.o core/base/src/TInspectorImp.o core/base/src/TMD5.o core/base/src/TMacro.o core/base/src/TMathBase.o core/base/src/TMemberInspector.o core/base/src/TMessageHandler.o core/base/src/TNamed.o core/base/src/TObjString.o core/base/src/TObject.o core/base/src/TObjectSpy.o core/base/src/TPRegexp.o core/base/src/TParameter.o core/base/src/TPluginManager.o core/base/src/TProcessID.o core/base/src/TProcessUUID.o core/base/src/TQCommand.o core/base/src/TQConnection.o core/base/src/TQObject.o core/base/src/TROOT.o core/base/src/TRef.o core/base/src/TRefCnt.o core/base/src/TRegexp.o core/base/src/TRemoteObject.o core/base/src/TStopwatch.o core/base/src/TStorage.o core/base/src/TString.o core/base/src/TStringLong.o core/base/src/TStyle.o core/base/src/TSysEvtHandler.o core/base/src/TSystem.o core/base/src/TSystemDirectory.o core/base/src/TSystemFile.o core/base/src/TTask.o core/base/src/TTime.o core/base/src/TTimeStamp.o core/base/src/TTimer.o core/base/src/TUUID.o core/base/src/TUri.o core/base/src/TUrl.o core/base/src/TVirtualFFT.o core/base/src/TVirtualGL.o core/base/src/TVirtualMonitoring.o core/base/src/TVirtualMutex.o core/base/src/TVirtualPS.o core/base/src/TVirtualPad.o core/base/src/TVirtualPadEditor.o core/base/src/TVirtualPadPainter.o core/base/src/TVirtualPerfStats.o core/base/src/TVirtualViewer3D.o core/base/src/TVirtualX.o core/cont/src/TArray.o core/cont/src/TArrayC.o core/cont/src/TArrayD.o core/cont/src/TArrayF.o core/cont/src/TArrayI.o core/cont/src/TArrayL.o core/cont/src/TArrayL64.o core/cont/src/TArrayS.o core/cont/src/TBits.o core/cont/src/TBtree.o core/cont/src/TClassTable.o core/cont/src/TClonesArray.o core/cont/src/TCollection.o core/cont/src/TExMap.o core/cont/src/THashList.o core/cont/src/THashTable.o core/cont/src/TIterator.o core/cont/src/TList.o core/cont/src/TMap.o core/cont/src/TObjArray.o core/cont/src/TObjectTable.o core/cont/src/TOrdCollection.o core/cont/src/TRefArray.o core/cont/src/TRefTable.o core/cont/src/TSeqCollection.o core/cont/src/TSortedList.o core/meta/src/TBaseClass.o core/meta/src/TCint.o core/meta/src/TClass.o core/meta/src/TClassGenerator.o core/meta/src/TClassMenuItem.o core/meta/src/TClassRef.o core/meta/src/TDataMember.o core/meta/src/TDataType.o core/meta/src/TDictAttributeMap.o core/meta/src/TDictionary.o core/meta/src/TFunction.o core/meta/src/TGenericClassInfo.o core/meta/src/TGlobal.o core/meta/src/TInterpreter.o core/meta/src/TIsAProxy.o core/meta/src/TMethod.o core/meta/src/TMethodArg.o core/meta/src/TMethodCall.o core/meta/src/TRealData.o core/meta/src/TSchemaRule.o core/meta/src/TSchemaRuleSet.o core/meta/src/TStreamerElement.o core/meta/src/TToggle.o core/meta/src/TToggleGroup.o core/meta/src/TVirtualStreamerInfo.o core/unix/src/TUnixSystem.o core/macosx/src/CocoaUtils.o core/macosx/src/TMacOSXSystem.o core/zip/src/ZDeflate.o core/zip/src/ZInflate.o core/zip/src/RZip.o core/zip/src/Compression.o core/lzma/src/ZipLZMA.o core/clib/src/Demangle.o core/clib/src/attach.o core/clib/src/detach.o core/clib/src/getpagesize.o core/clib/src/keys.o core/clib/src/mcalloc.o core/clib/src/mfree.o core/clib/src/mmalloc.o core/clib/src/mmapsup.o core/clib/src/mmcheck.o core/clib/src/mmemalign.o core/clib/src/mmstats.o core/clib/src/mmtrace.o core/clib/src/mrealloc.o core/clib/src/mvalloc.o core/clib/src/sbrksup.o core/clib/src/snprintf.o core/clib/src/strlcat.o core/clib/src/strlcpy.o core/metautils/src/RConversionRuleParser.o core/metautils/src/TClassEdit.o core/textinput/src/Getline.o core/textinput/src/Getline_color.o core/textinput/src/textinput/Editor.o core/textinput/src/textinput/History.o core/textinput/src/textinput/KeyBinding.o core/textinput/src/textinput/Range.o core/textinput/src/textinput/SignalHandler.o core/textinput/src/textinput/StreamReader.o core/textinput/src/textinput/StreamReaderUnix.o core/textinput/src/textinput/StreamReaderWin.o core/textinput/src/textinput/TerminalConfigUnix.o core/textinput/src/textinput/TerminalDisplay.o core/textinput/src/textinput/TerminalDisplayUnix.o core/textinput/src/textinput/TerminalDisplayWin.o core/textinput/src/textinput/TextInput.o core/textinput/src/textinput/TextInputContext.o core/base/src/G__Base1.o core/base/src/G__Base2.o core/base/src/G__Base3.o core/cont/src/G__Cont.o core/meta/src/G__Meta.o core/unix/src/G__Unix.o core/macosx/src/G__Macosx.o core/zip/src/G__Zip.o core/clib/src/G__Clib.o core/metautils/src/G__MetaUtils.o core/textinput/src/G__TextInput.o -ldl -Llib -lCint -framework Cocoa -L/usr/local/lib -lz lib/liblzma.a -lpthread lib/libpcre.a -compatibility_version 5 -current_version 5.34.34
ln -fs libCore.5.34.so lib/libCore.so
==> lib/libCore.5.34.so done
bin/rlibmap -o lib/libCore.rootmap -l lib/libCore.so -d -c /Users/spiffyzha/Desktop/root/core/base/inc/LinkDef1.h /Users/spiffyzha/Desktop/root/core/base/inc/LinkDef2.h /Users/spiffyzha/Desktop/root/core/base/inc/LinkDef3.h /Users/spiffyzha/Desktop/root/core/cont/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/meta/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/zip/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/unix/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/macosx/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/clib/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/metautils/inc/LinkDef.h /Users/spiffyzha/Desktop/root/core/textinput/inc/LinkDef.h

============================================================
=== ROOT BUILD SUCCESSFUL. ===
=== Run ‘make install’ now. ===

/Users/spiffyzha/Desktop/root$
[/code]

So I see that this does indeed link with /usr/local/lib, but beyond that I’m not really sure what this tells us.

Hi,

I see -L/usr/local/lib -lz and I assume it does find a libz.so in /usr/local/lib which is likely not the one we want. To work-around the problem, try using the built-in zip library: --enable-builtin-zlib

Cheers,
Philippe.

Well, try to configure your ROOT using “–enable-builtin-zlib”.

Do you know where does the /usr/local/lib/libstdc++.* come from?
Try “locate libstdc++” … according to your “otool_output.txt” file, you seem to have at least three different versions installed.

Oh man, it’s so much worse than that:

/Users/spiffyzha$ locate libstdc++ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libstdc++.6.0.9.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libstdc++.6.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libstdc++.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib/libstdc++.6.0.9.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib/libstdc++.6.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib/libstdc++.dylib /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/lib/libstdc++.6.0.9.dylib /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/lib/libstdc++.6.dylib /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/lib/libstdc++.dylib /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/lib/libstdc++.6.0.9.dylib /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/lib/libstdc++.6.dylib /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/lib/libstdc++.dylib /opt/local/lib/gcc45/i386/libstdc++.6.dylib /opt/local/lib/gcc45/libstdc++.6.dylib /opt/local/lib/gcc45/libstdc++.dylib /opt/local/lib/gcc48/i386/libstdc++.6.dylib /opt/local/lib/gcc48/libstdc++.6.dylib /opt/local/lib/gcc48/libstdc++.dylib /opt/local/lib/libstdc++.6.dylib /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/cross/mipsel-linux-gcc34/files/300-libstdc++-pic.patch /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/cross/mipsel-linux-gcc34/files/602-sdk-libstdc++-includes.patch /usr/gcc-5.1.0/lib/i386/libstdc++.6.dylib /usr/gcc-5.1.0/lib/i386/libstdc++.a /usr/gcc-5.1.0/lib/i386/libstdc++.a-gdb.py /usr/gcc-5.1.0/lib/i386/libstdc++.dylib /usr/gcc-5.1.0/lib/i386/libstdc++.la /usr/gcc-5.1.0/lib/libstdc++.6.dylib /usr/gcc-5.1.0/lib/libstdc++.a /usr/gcc-5.1.0/lib/libstdc++.a-gdb.py /usr/gcc-5.1.0/lib/libstdc++.dylib /usr/gcc-5.1.0/lib/libstdc++.la /usr/lib/libstdc++.6.0.9.dylib /usr/lib/libstdc++.6.dylib /usr/lib/libstdc++.dylib /usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin11/4.2.1/libstdc++.dylib /usr/local/lib/i386/libstdc++.6.dylib /usr/local/lib/i386/libstdc++.a /usr/local/lib/i386/libstdc++.a-gdb.py /usr/local/lib/i386/libstdc++.dylib /usr/local/lib/i386/libstdc++.la /usr/local/lib/libstdc++.6.dylib /usr/local/lib/libstdc++.a /usr/local/lib/libstdc++.a-gdb.py /usr/local/lib/libstdc++.dylib /usr/local/lib/libstdc++.la
Sometimes I wonder how anything manages to get built at all.

So. I’ve now re-built ROOT with the “–enable-builtin-zlib” option. And that seems to have done the trick! Yay!! :smiley:

Thanks a ton for helping me with this Philippe and Pepe Le Pew! I really appreciate it.