ports/99839: [sysutils/sge] patch to ensure correct support of berkeleydb spooling in sun grid engine

Davide Cittaro daweonline at gmail.com
Thu Jul 6 12:21:08 UTC 2006


>Number:         99839
>Category:       ports
>Synopsis:       [sysutils/sge] patch to ensure correct support of berkeleydb spooling in sun grid engine
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jul 06 12:20:19 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Davide Cittaro
>Release:        5.4
>Organization:
IFOM
>Environment:
FreeBSD host12.bioinfo3.servers.ifom-ieo-campus.it 5.4-RELEASE-p12 FreeBSD 5.4-RELEASE-p12 #0: Thu Mar  2 12:57:38 CET 2006     root at master.bioinfo3.servers.ifom-ieo-campus.it:/usr/obj/usr/src/sys/ALCATRAZ  i386

>Description:
If one installs sun grid engine 6 (6.0u7 at time of writing) with ports (sysutils/sge), it is impossible to use berkeleydb support for spooling database, as one gets this error during the installation:

creating directory: /usr/local/sge/campus/spool/spooldb
Dumping bootstrapping information
Initializing spooling database

critical error: Profiling array is not initialized!

Abort trap (core dumped)

Command failed: ./utilbin/fbsd-i386/spoolinit berkeleydb libspoolb /usr/local/sge/campus/spool/spooldb init

Probably a permission problem. Please check file access permissions.
Check read/write permission. Check if SGE daemons are running.

So that one has to use only classic spooling method.
>How-To-Repeat:
Install sge with BDB support

cd /usr/ports/sysutils/sge
make WITH_BDB=yes install 

After installation move to $SGE_ROOT directory (default /usr/local/sge) and install the qmaster:

./install_qmaster

The error is given during the assisted installation, once choosen the spooling directory
>Fix:
A way to fix this is adding "-export-dynamic" value to LFLAGS and SHARED_LFLAGS in aimk file (gridengine/source/aimk). Since aimk is patched if sge is installed with ports, I suggest to modify the patch-aimk file (/usr/ports/sysutils/sge/files/patch-aimk) with the one pasted below:

$ cat patch-aimk.new 


--- aimk.orig   Tue Oct 25 19:48:15 2005
+++ aimk        Thu Jul  6 13:46:28 2006
@@ -397,7 +397,7 @@
 if ( $?SGE_INPUT_CFLAGS ) then
    set INP_CFLAGS    = "$SGE_INPUT_CFLAGS"
 else
-   set INP_CFLAGS    = ""
+   set INP_CFLAGS    = "%%CFLAGS%%"
 endif
 
 # Default build targets for which we have seperate make files
@@ -437,7 +437,7 @@
 set DRMAA_TARGET     = "ALL"
 set PROTECTED        = 0
 
-set LFLAGS           = "-L."
+set LFLAGS           = "-export-dynamic -L."
 set XLFLAGS          = ""
 set XLIBS            = ""
 set LIBS             = "-lm -lpthread"
@@ -453,7 +453,7 @@
 set SHAREDEXT        = ".so"
 set SHAREDLD         = ""
 set SHARED_CFLAGS    = ""
-set SHARED_LFLAGS    = ""
+set SHARED_LFLAGS    = "-export-dynamic"
 
 # Flags for man page creation, copyright stuff and adoc
 set BUILDMAN          = 0
@@ -1180,8 +1180,8 @@
    set MAKE = gmake
    set OFLAG = "-O"
    set ARFLAGS     = rcv
-   set CC       = gcc
-   set CXX      = g++
+   set CC       = %%CC%%
+   set CXX      = %%CXX%%++
    set DLLIB   = ""
    set DEPEND_FLAGS = "$CFLAGS $XMTINCD"
    set PTHRDSFLAGS = "-D_REENTRANT -D__USE_REENTRANT"
@@ -1200,7 +1200,7 @@
    set XLFLAGS  = "$XLIBD"
    set XLIBS    = " -Xlinker -lXm -Xlinker -Bdynamic -lXpm -lXt -lXext -lX11 -lSM -lICE -lXp"
    set RM      = "rm -f"
-   set JAVA_ARCH = ""
+   set JAVA_ARCH = "freebsd"
    breaksw 
 
 case NETBSD_*:

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list