Installing ROOT on Apple with Tiger 10.4.4

Hi all -

I am trying to install ROOT on my new Apple iMac and I am having trouble getting root to compile. Are there steps that need to be taken before attempting to compile the source code. Do I need to install fink and gmake , for example? Below I have included the steps I took to install it and the error message I get.

Thanks,

-Jason

Steps:

./configure macosx --enable-roofit
make

error:

Options to Xrootd-configure: --ccflavour=macos --enable-echo --no-arch-subdirs --disable-mon
Guessing architecture/compiler: darwin:i386:8.4.1
Attempts at guessing your architecture failed.
Please specify the architecture as the first argument.
Do ‘./configure.classic --help’ for a list of avaliable architectures.
*** Error condition reported by Xrootd-configure (rc = 1): building only the client …
g++ -O2 -pipe -W -Wall -Wno-long-double -Woverloaded-virtual -fsigned-char -fno-common -I/usr/X11R6/include -Iinclude -Ixrootd/src/xrootd/src -o netx/src/TXNetFile.o -c netx/src/TXNetFile.cxx
g++ -O2 -pipe -W -Wall -Wno-long-double -Woverloaded-virtual -fsigned-char -fno-common -I/usr/X11R6/include -Iinclude -Ixrootd/src/xrootd/src -o netx/src/TXNetSystem.o -c netx/src/TXNetSystem.cxx
g++ -pipe -W -Wall -Wno-long-double -Woverloaded-virtual -fsigned-char -fno-common -I/usr/X11R6/include -Iinclude -I. -Ixrootd/src/xrootd/src -o netx/src/G__Netx.o -c netx/src/G__Netx.cxx
g++ -O2 -dynamiclib -single_module -undefined dynamic_lookup -install_name /Users/leahrieger/Desktop/root/lib/libNetx.dylib -o lib/libNetx.dylib netx/src/TXNetFile.o netx/src/TXNetSystem.o netx/src/G__Netx.o -ldl xrootd/src/xrootd/lib/libXrdClient.a xrootd/src/xrootd/lib/libXrdOuc.a xrootd/src/xrootd/lib/libXrdNet.a
i686-apple-darwin8-g+±4.0.1: xrootd/src/xrootd/lib/libXrdClient.a: No such file or directory
i686-apple-darwin8-g+±4.0.1: xrootd/src/xrootd/lib/libXrdOuc.a: No such file or directory
i686-apple-darwin8-g+±4.0.1: xrootd/src/xrootd/lib/libXrdNet.a: No such file or directory
ln -fs libNetx.dylib lib/libNetx.so
==> lib/libNetx.dylib done
g++ -O2 -pipe -W -Wall -Wno-long-double -Woverloaded-virtual -fsigned-char -fno-common -I/usr/X11R6/include -Iinclude -DR__KRB5 -DR__SSL -o rpdutils/src/rpdutils.o -c rpdutils/src/rpdutils.cxx
rpdutils/src/rpdutils.cxx:125:19: error: crypt.h: No such file or directory
make: *** [rpdutils/src/rpdutils.o] Error 1

Hi Jason,

I’ve fixed the problems. Please checkout the head and do:

./configure --disable-xrootd --enable-roofit
make
make install

In the coming days I’ll port xrootd too.

Cheers, Fons.

I too am having new compiling issues. I installed OS X 10.4.4 on a new hard drive, put the XCode stuff on, compiled a bunch of fink stuff, and now I tried a fresh download of root code. I see two things:

  1. My fink libraries are not searched for any more. For example, I used fink to install libpng in /sw/lib, but configure no longer seems to look there. ???

  2. Compilation using no options with configure or make runs fine until it has an error at:

g++ -O2 -bind_at_load -o cint/main/cint_tmp cint/main/cppmain.o
cint/src/g__cfunc.o cint/main/G__setup.o cint/src/Api.o cint/src/Apiif.o cint/src/BaseCls.o cint/src/CallFunc.o cint/src/Class.o cint/src/DataMbr.o cint/src/Method.o cint/src/MethodAr.o cint/src/Token.o cint/src/Type.o cint/src/Typedf.o cint/src/bc_assign.o cint/src/bc_autoobj.o cint/src/bc_cfunc.o cint/src/bc_debug.o cint/src/bc_eh.o cint/src/bc_exec.o cint/src/bc_inst.o cint/src/bc_item.o cint/src/bc_parse.o cint/src/bc_reader.o cint/src/bc_type.o cint/src/bc_vtbl.o cint/src/rflx_gendict.o cint/src/rflx_gensrc.o cint/src/rflx_tools.o cint/src/v6_auxu.o cint/src/v6_cast.o cint/src/v6_debug.o cint/src/v6_decl.o cint/src/v6_disp.o cint/src/v6_dump.o cint/src/v6_end.o cint/src/v6_error.o cint/src/v6_expr.o cint/src/v6_fread.o cint/src/v6_func.o cint/src/v6_gcoll.o cint/src/v6_global1.o cint/src/v6_global2.o cint/src/v6_ifunc.o cint/src/v6_inherit.o cint/src/v6_init.o cint/src/v6_input.o cint/src/v6_intrpt.o cint/src/v6_loadfile_tmp.o cint/src/v6_macro.o cint/src/v6_malloc.o cint/src/v6_memtest.o cint/src/v6_new.o cint/src/v6_newlink.o cint/src/v6_oldlink.o cint/src/v6_opr.o cint/src/v6_parse.o cint/src/v6_pause.o cint/src/v6_pcode.o cint/src/v6_pragma.o cint/src/v6_quote.o cint/src/v6_scrupto.o cint/src/v6_shl.o cint/src/v6_sizeof.o cint/src/v6_stdstrct.o cint/src/v6_struct.o cint/src/v6_stub.o cint/src/v6_tmplt.o cint/src/v6_typedef.o cint/src/v6_val2a.o cint/src/v6_value.o cint/src/v6_var.o cint/src/gcc3strm.o cint/src/longif3.o -lm -ldl
/usr/bin/ld: Undefined symbols:
std::basic_istream<char, std::char_traits >::ignore(int)
std::basic_istream<char, std::char_traits >::ignore()
collect2: ld returned 1 exit status
make: *** [cint/main/cint_tmp] Error 1

Anyone have any tips on how to solve this issue?

Thanks for any help,
-Gene

Hi Gene,

do you see this problem on PPC or Intel? I've no problems installing the head on PPC 10.4.4. On Intel I've only access to 10.4.3. Also we don't use /sw anymore on 10.4 for png and others since we cannot rely on users having Fink installed. What happens now is that the internal png and jpg libraries are build. So no loss of functionality.

Cheers, Fons.

PS: xrootd has now also been ported to Intel.

Thanks for responjding, Fons. This is on a PPC (G4). Where is it supposed to find things like libpng? I simply don’t understand what “internal … libraries” means.

I have XCode 2.2.1 installed (gcc: powerpc-apple-darwin8-gcc-4.0.1), and here is the output of configure:

./configure
Configuring for macosx
Checking for libX11 … /usr/X11R6/lib
Checking for X11/Xlib.h … /usr/include
Checking for libXpm … /usr/X11R6/lib
Checking for libpthread … /usr/lib
Checking whether to build included libfreetype6 … yes
Checking whether to build included libpcre … yes
Checking for GL/gl.h … /usr/X11R6/include
Checking for libGL, or libMesaGL … /usr/X11R6/lib
Checking for libGLU, or libMesaGLU … /usr/X11R6/lib
Checking for mysql.h … no
Checking for libmysqlclient_r, libmysqlclient, or mysqlclient … no
Checking for occi.h … no
Checking for libclntsh, or oci … no
Checking for libocci, or oraocci10 … no
Checking for libpq-fe.h … no
Checking for libpq … no
Checking for sql.h … no
Checking for libsqlod … no
Checking for rfio_api.h … no
Checking for stager_api.h … no
Checking for libshift, shiftmd, or shift … no
Checking for gfal_api.h … no
Checking for libgfal … no
Checking for ApMon.h … no
Checking for libapmoncpp … no
Checking for libpacklib, packmd, or packlib … /cern/pro/lib
Checking for libkernlib, kernmd, or kernlib … /cern/pro/lib
Checking for rfio in /cern/pro/lib/libpacklib.a … no
Checking for libPythia6 … /cern/pro/lib
Checking for pythia6_common_block_address__ in /cern/pro/lib/libPythia6.a … no
Checking for pythia6_common_block_address_ in /cern/pro/lib/libPythia6.a … no
Checking for pythia6_common_address in /cern/pro/lib/libPythia6.a … no
didn’t find pythia6_common_block_address[_]* in -lPythia6
Checking for libVenus … no
Checking for dcap.h … no
Checking for libdcap … no
Checking for chirp_client.h … no
Checking for libchirp_client … no
Checking for gliteUI.h … no
Checking for libgliteUI … no
Checking for jpeglib.h … /usr/local/include
Checking for png.h … no
Checking for tiffio.h … /usr/local/include
Checking for gif_lib.h … no
Checking for libjpeg … /usr/local/lib
Checking for libtiff … /usr/local/lib
Checking for libz … /usr/lib
Checking for libpng … no
Checking whether to build included libAfterImage … yes
Checking for ldap.h … /usr/include
Checking for libldap … /usr/lib
Checking for liblber … /usr/lib
Checking for Python.h … /System/Library/Frameworks/Python.framework/Versions/2.3/include/python2.3
Checking for libpython2.4, libpython2.3, libpython2.2, python24, python23, or Python … /System/Library/Frameworks/Python.framework/Versions/2.3
Checking for xml2-config … /usr/bin/xml2-config
Checking for libxml2 version >= 2.4.x … ok
Checking whether to build xrootd … yes
Checking for globusdir … no
Checking for GLOBUS_LOCATION … no
Checking for libssl … /usr/lib
Checking for libcrypto … /usr/lib
Checking for openssl/bio.h … /usr/include
Checking for openssl/blowfish.h … /usr/include
Checking for openssl/err.h … /usr/include
Checking for openssl/pem.h … /usr/include
Checking for openssl/rand.h … /usr/include
Checking for openssl/rsa.h … /usr/include
Checking for t_server.h … no
Checking for libsrp … no
Checking for libgmp … no
Checking for libmisc … no
Checking for pwauth.h … no
Checking for krb5.h … /usr/include
Checking for libk5crypto … /usr/lib
Checking whether we’re using MIT Kerberos … yes
Checking for libkrb5 … /usr/lib
Checking for libcrypto … /usr/lib
Checking for kinit … /usr/bin/kinit
Checking for libcom_err … /usr/lib
Checking for shadow passwords … no
Checking whether to build libMathCore … no
Checking whether to build libMathMore … no
Checking whether to build libCintex … no
Checking whether to build libReflex … no
Checking whether to build libRooFit … no
Checking whether to build libMinuit2 … no
Checking whether to build libTable … no
Checking for Clarens support … no
Checking for PEAC support … no
Generating cint dictionaries.
Writing config/Makefile.config … done
Writing include/config.h … done
Writing bin/root-config … done
Writing etc/system.rootrc … done
Writing etc/system.rootauthrc … done
Writing etc/system.rootdaemonrc … done
Writing etc/root.mimes … done
Writing etc/rootd … done
Writing etc/rootd.xinetd … done
Writing etc/proofd … done
Writing etc/proofd.xinetd … done
Writing bin/memprobe … done
Writing build/misc/root-help.el … done
Writing macros/html.C … done
Writing config.status … done

Enabled support for asimage, astiff, builtin_afterimage, builtin_freetype, builtin_pcre, cern, exceptions, krb5, ldap, opengl, python, shared, ssl, thread, xml, xrootd.

To build ROOT type:

make

-Gene

Hi Gene,

the libAfterImage source we distribute contains also the source for the png, jpg and gif libs. If the system png (or /sw one) is not found, this internal png lib will be build. Check $ROOTSYS/asimage/src/libAfterImage/png/

Cheers, Fons.

Interesting!

But I’m still left with my std::basic_istream problems.

-Gene