[GE dev] Instruction of how to build SGE 6.2u3 on CentOS 5.3

pine_ml pine_ml at 163.com
Wed Jul 29 04:22:33 BST 2009


    [ The following text is in the "gb2312" character set. ]
    [ Your display is set for the "ISO-8859-10" character set.  ]
    [ Some characters may be displayed incorrectly. ]

Yes, it will be easy to install binary packages.
Because I want to do something about sge's source code, I have to suffer the pain. :-)

I will revise my methods with your advises.

Thanks again. :-)


?2009-07-29?hintak <htl10 at users.sourceforge.net> ???
>--- On Tue, 28/7/09, pine_ml <pine_ml at 163.com> wrote:
>
>> First of all, thanks, hintak!
>> With your help, I have builded sge 6.2u3 successfully.
>
>You are welcomed. I am surprised some of the problems are still there - I reported them and/or provided patches/workarounds for them a couple of years ago... I used to build sge and got quite familiar with its code base, but lately fedora (8? or 9 onwards) ships it so there isn't much point od doing my own. May be I should ask the question: why isn't grabbing the rpm via yum good enough for you, or the curtesy binaries? CentOS 5.3 should be binary-compatible with fedora 10, I think, so it should be painless just installing the fedora 10 RPMs or just 'rpm --rebuild' the source rpm; the curtesy binaries have some very antique dependencies the last time I checked, but that should work as well.
>
>A few comments below, and hope that it would be useful for others or in the future.
>
>> Following are my method to build sge 6.2u3 on CentOS 5.3
>> successfully.
>> Hope it is useful for somebody else because sge's build
>> is awesome on Fedoara/CentOS.
>>
>> --> get source tar ball
>>     [] get sge 6.2u3's source code
>>
>> ge-V623_TAG-src-all_modules.tar.gz
>>     [] get Berkeley DB's source code
>>         db-4.7.25.tar.gz
>
>The Berkeley DB package should be available from the distro - 'yum install db4 and db4-devel' should do it.
>
>>
>>  --> build Berkeley DB
>>     [] unpack Berkeley DB's source
>>         tar zxvf
>> db-4.7.25.tar.gz
>>     [] enter its directory
>>         cd db-4.7.25
>>     [] enter build directory
>>         cd build_unix
>>     [] configure
>>         ../dist/configure
>> --enable-rpc --enable-posixmutexes
>
>I don't know the Berkeley DB well enough, but I would have thought rpc and posixmutexes are the defaults for unix systems? The distro-shipped packages should work well enough.
>
>>     [] make
>>         make
>>     [] install, and remember your DB's
>> target path (as MyDbPath)
>>          make install
>>
>>     Note: you can specify the target path in
>> ../dist/configure --prefix=/path/to/your/target --enable-rpc
>> --enable-posixmutexes
>>
>>   --> install Motif/OpenMotif
>>     yum install openmotif*
>
>SGE can be built also with lesstif, I think.
>
>>
>>   --> install openJDK
>>     yum install openjdk*
>>
>>   --> install libXpm.devel-i386
>>     yum install libXpm.devel-i386
>
>typo - 'libXpm-devel.i386' .
>
>>
>>   --> modify two aimk files
>>     [] aimk for krb
>>         set
>> SECLIBS_STATIC    = "-lssl
>> -lcrypto" # added by c.k
>>         #set
>> SECLIBS_STATIC    =
>> "$OPENSSL_HOME/lib/libssl.a
>> $OPENSSL_HOME/lib/libcrypto.a"
>
>
>I think the correct fix here is to put linux under the same category as HP-UX (which ships the shared-library version of those libraries) to make it use the dynamic version of the libraries, rather than changing the static defines.
>
>>     [] aimk.site for java
>>         if ( ! $?JAVA_HOME )
>> then
>>            #set
>> JAVA_BIN = `which \java`
>>            #
>> modified by c.k
>>            set
>> JAVA_BIN =
>> '/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/bin/java'
>>
>>            if ( -e
>> "$JAVA_BIN" ) then
>>
>>       #if (( -e
>> "$JAVA_BIN" ) && ("$JAVA_BIN" !=
>> "/usr/bin/java")) then
>>
>>       set JAVAV = `$JAVA_BIN
>> -version |& head -1`
>>
>>       set JAVAV = `expr
>> "$JAVAV" : 'java version
>> "1\.\([0-9]\)*"'`
>>
>>
>>       if ( $JAVAV >= 4 ) then
>>
>>          setenv
>> JAVA_HOME `expr //$JAVA_BIN :
>> '//\(.*\)/bin/.*'`
>>
>>       endif
>>            endif
>>
>>            #
>> following code section is added by c.k
>>            if (( -e
>> "$JAVA_BIN" ) && ("$JAVA_BIN" ==
>> "/usr/bin/java")) then
>>
>>     #set argv = ( -no-jni $* )
>>
>>         set JAVA_HOME =
>> '/nowhere'
>>            endif
>>
>>         endif
>
>some of these probably aren't necessary if you simply do
>   export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0
>or
>   setenv JAVA_HOME /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0
>?
>In any case, as I already wrote the problem is simply that the auto-detection of JAVA_HOME based on `which java`, and it ended up grabbing  jni includes from files of the same name but different content off the linux kernel :-).
>
>>     [] aimk.site for DB
>>         #set BERKELEYDB_HOME
>> = /off_home/gridengine/db-4.4.20/$buildarch
>>        #modified by c.k
>>         set BERKELEYDB_HOME =
>> /usr/local/BerkeleyDB.4.7 #remember your MyDbPath?
>
>should use the distro-shipped packages/headers...
>
>>
>>   --> modify build.xml for sun's private java
>> library
>>     [] <target name="all"
>> depends="detect_jvm_lib, drmaa"/>
>>
>>  --> build the dependency tool
>> 'sge_depend'
>>     [] ./aimk -only-depend -no-dump
>>     [] ./scripts/zerodepend
>>     [] ./aimk -no-dump depend
>>
>>   --> build SGE
>>     [] ./aimk -no-dump
>>
>>
>>
>>
>>
>>
>> ??YEAH.NET?????????????
>>
>
>------------------------------------------------------
>http://gridengine.sunsource.net/ds/viewMessage.do?dsForumId=39&dsMessageId=209926
>
>To unsubscribe from this discussion, e-mail: [dev-unsubscribe at gridengine.sunsource.net].



________________________________
??YEAH.NET?????????????<http://www.yeah.net/?from=footer>



More information about the gridengine-users mailing list