[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [HTCondor-users] Building htcondor on Debian 9 issue: "Can't find ldap.h, needed to build nordugrid_gahp"



that message is triggered by LDAP_FOUND being false, and LDAP_FOUND looks for more than just ldap see build/CondorConfigure.cmake:

 

find_multiple( "ldap;lber" LDAP_FOUND )

 

Also, you definitely want -DCLIPPED:BOOL=âONâ  not âOFFâ

 

CLIPPED means donât build standard universe, And standard universe definitely doesnât work on Debian 9, and probably never will.

 

in our nmi builds, standard universe ends up disabled because glibc version doesnât match the desired one. you would see this message

 

-- Condor can not build standard universe for glibc version:224

-- ** Standard Universe Disabled **

 

so even though the Debian9 builds are configured as non-clipped, they are actually built clipped.

 

-tj

 

 

From: HTCondor-users [mailto:htcondor-users-bounces@xxxxxxxxxxx] On Behalf Of Stephen Chan
Sent: Tuesday, March 20, 2018 6:27 PM
To: htcondor-users@xxxxxxxxxxx
Subject: [HTCondor-users] Building htcondor on Debian 9 issue: "Can't find ldap.h, needed to build nordugrid_gahp"

 

Hello,

   I'm trying to get the current stable release of HTCondor running on Debian 9, and running into an odd

problem with the source build.

   After downloading the source for Condor 8.6.10, and installing a raft of dependencies, I'm running the following command:

./configure_uw -DCLIPPED:BOOL='OFF' -DPROPER:BOOL='OFF' -DWITH_BOINC:BOOL='OFF' -DWITH_CREAM:BOOL='OFF' -D_VERBOSE:BOOL

 

   Which is what is recommended by ./nmi_tools/glue/SubmitInfo.pm x86_64_Debian9

 

   It chugs along for a bit and then errors out, claiming it cannot find ldap.h, despite the fact that it is installed and in the the standard include directory:

root@bc28fa74dd3e:~/src/condor-8.6.10# CPATH=/usr/lib ./configure_uw -DCLIPPED:BOOL='OFF' -DPROPER:BOOL='OFF' -DWITH_BOINC:BOOL='OFF' -DWITH_CREAM:BOOL='OFF' -D_VERBOSE:BOOL='ON'

-------------------------------------------------------------------

* NOTE: Attempting to configure a UW-esk build

* which will build and link specfic versions of externals

* that may not be the version your system distros with!

* so if you are not UW, namely a package maintainer for distro xyz

* you will likely want to run "cmake ."

[delete a bunch of build output]

-- NOTE: *cream* targets will not be built HAVE_EXT_CREAM=

-- adding directory (/root/src/condor-8.6.10/src/defrag)

-- adding directory (/root/src/condor-8.6.10/src/ec2_gahp)

-- adding directory (/root/src/condor-8.6.10/src/gangliad)

-- adding directory (/root/src/condor-8.6.10/src/gce_gahp)

-- adding directory (/root/src/condor-8.6.10/src/gt2_gahp)

-- adding directory (/root/src/condor-8.6.10/src/h)

-- adding directory (/root/src/condor-8.6.10/src/nordugrid_gahp)

CMake Error at src/nordugrid_gahp/CMakeLists.txt:22 (message):

  Can't find ldap.h, needed to build nordugrid_gahp

 

 

-- Configuring incomplete, errors occurred!

See also "/root/src/condor-8.6.10/CMakeFiles/CMakeOutput.log".

See also "/root/src/condor-8.6.10/CMakeFiles/CMakeError.log".

root@bc28fa74dd3e:~/src/condor-8.6.10#

 

   But of course I have ldap installed:

root@bc28fa74dd3e:~/src/condor-8.6.10# dpkg-query -l | grep ldap   

ii  ldap-utils                             2.4.44+dfsg-5+deb9u1                    amd64        OpenLDAP utilities

ii  libldap-2.4-2:amd64                    2.4.44+dfsg-5+deb9u1                    amd64        OpenLDAP libraries

ii  libldap-common                         2.4.44+dfsg-5+deb9u1                    all          OpenLDAP common files for libraries

ii  libldap2-dev:amd64                     2.4.44+dfsg-5+deb9u1                    amd64        OpenLDAP development libraries

root@bc28fa74dd3e:~/src/condor-8.6.10# ls -l /usr/include/ldap*

-rw-r--r-- 1 root root 65253 Aug 10  2017 /usr/include/ldap.h

-rw-r--r-- 1 root root  9466 Aug 10  2017 /usr/include/ldap_cdefs.h

-rw-r--r-- 1 root root  1814 Aug 10  2017 /usr/include/ldap_features.h

-rw-r--r-- 1 root root  9450 Aug 10  2017 /usr/include/ldap_schema.h

-rw-r--r-- 1 root root  3468 Aug 10  2017 /usr/include/ldap_utf8.h

 

   I shouldn't need to do this, but if I add /usr/include to the CPATH, I still get the same error:

root@bc28fa74dd3e:~/src/condor-8.6.10# CPATH=/usr/include ./configure_uw -DCLIPPED:BOOL='OFF' -DPROPER:BOOL='OFF' -DWITH_BOINC:BOOL='OFF' -DWITH_CREAM:BOOL='OFF' -D_VERBOSE:BOOL='ON'

-------------------------------------------------------------------

* NOTE: Attempting to configure a UW-esk build

* which will build and link specfic versions of externals

* that may not be the version your system distros with!

* so if you are not UW, namely a package maintainer for distro xyz

* you will likely want to run "cmake ."

[ delete more build output]

-- adding directory (/root/src/condor-8.6.10/src/nordugrid_gahp)

CMake Error at src/nordugrid_gahp/CMakeLists.txt:22 (message):

  Can't find ldap.h, needed to build nordugrid_gahp

 

 

-- Configuring incomplete, errors occurred!

See also "/root/src/condor-8.6.10/CMakeFiles/CMakeOutput.log".

See also "/root/src/condor-8.6.10/CMakeFiles/CMakeError.log".

 

   A look at the CMakeError.log file for ldap shows this:

 

Determining if files ldap.h exist failed with the following output:

Change Dir: /root/src/condor-8.6.10/CMakeFiles/CMakeTmp

 

Run Build Command:"/usr/bin/make" "cmTC_ecb3d/fast"

/usr/bin/make -f CMakeFiles/cmTC_ecb3d.dir/build.make CMakeFiles/cmTC_ecb3d.dir/build

make[1]: Entering directory '/root/src/condor-8.6.10/CMakeFiles/CMakeTmp'

Building C object CMakeFiles/cmTC_ecb3d.dir/CheckIncludeFiles.c.o

/usr/bin/cc     -o CMakeFiles/cmTC_ecb3d.dir/CheckIncludeFiles.c.o   -c /root/src/condor-8.6.10/CMakeFiles/CMakeTmp/CheckIncludeFiles.c

/root/src/condor-8.6.10/CMakeFiles/CMakeTmp/CheckIncludeFiles.c:2:18: fatal error: ldap.h: No such file or directory

 #include <ldap.h>

                  ^

compilation terminated.

CMakeFiles/cmTC_ecb3d.dir/build.make:65: recipe for target 'CMakeFiles/cmTC_ecb3d.dir/CheckIncludeFiles.c.o' failed

make[1]: *** [CMakeFiles/cmTC_ecb3d.dir/CheckIncludeFiles.c.o] Error 1

make[1]: Leaving directory '/root/src/condor-8.6.10/CMakeFiles/CMakeTmp'

Makefile:126: recipe for target 'cmTC_ecb3d/fast' failed

make: *** [cmTC_ecb3d/fast] Error 2

 

   Its clear that the ldap.h file is not being found, but there is not reason for it not to be found.

   I'm also seeing exactly the same behavior when I run "cmake ."

 

   I've tried going into ccmake and setting WITH_GLOBUS, WITH_GSOAP and WITH_KRB5 to OFF (because those things aren't in my runtime environment), which gets me past the ldap.h issue, and I can start the build, but eventually the build tries to include globus_gsi_credential.h and craters. Here's the output from the build:

 

 

root@bc28fa74dd3e:~/src/condor-8.6.10# make package

-- ***********************************************************

-- System(bc28fa74dd3e): LINUX(4.9.60-LINUXKIT-AUFS) Arch=X86_64 BitMode=64 BUILDID:UW_development

-- install prefix:/root/src/condor-8.6.10/release_dir

-- ********* BEGINNING CONFIGURATION *********

-- Could NOT find PythonInterp: Found unsuitable version "2.7.13", but required is at least "3.5.3" (found /usr/bin/python)

CMake Warning (dev) at /usr/share/cmake-3.7/Modules/FindOpenMP.cmake:179 (if):

  if given arguments:

[delete build stuff]

[  5%] Performing build step for 'blahp'

EXTERNALS_RPATH is $ORIGIN/../lib:/lib64:/usr/lib64:$ORIGIN/../lib/condor:/usr/lib64/condor

HOSTNAME=bc28fa74dd3e

SHLVL=1

HOME=/root

OLDPWD=/root/src/condor-8.6.10

MAKEFLAGS=s

MAKE_TERMERR=/dev/pts/0

_=/usr/bin/make

TERM=xterm

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

MAKELEVEL=3

MAKE_TERMOUT=/dev/pts/0

LD_RUN_PATH=$ORIGIN/../lib:/lib64:/usr/lib64:$ORIGIN/../lib/condor:/usr/lib64/condor

PWD=/root/src/condor-8.6.10/externals/bundles/blahp/1.16.5.1/blahp-prefix/src/blahp

CPATH=/usr/include

MFLAGS=-s

Making all in src

Making all in scripts

cc1: warning: command line option '-std=c++11' is valid for C++/ObjC++ but not for C

server.c:83:35: fatal error: globus_gsi_credential.h: No such file or directory

 #include "globus_gsi_credential.h"

                                   ^

compilation terminated.

Makefile:959: recipe for target 'server.o' failed

make[5]: *** [server.o] Error 1

Makefile:1443: recipe for target 'all-recursive' failed

make[4]: *** [all-recursive] Error 1

Makefile:479: recipe for target 'all-recursive' failed

make[3]: *** [all-recursive] Error 1

externals/bundles/blahp/1.16.5.1/CMakeFiles/blahp.dir/build.make:113: recipe for target 'externals/bundles/blahp/1.16.5.1/blahp-prefix/src/blahp-stamp/blahp-build' failed

make[2]: *** [externals/bundles/blahp/1.16.5.1/blahp-prefix/src/blahp-stamp/blahp-build] Error 2

CMakeFiles/Makefile2:1597: recipe for target 'externals/bundles/blahp/1.16.5.1/CMakeFiles/blahp.dir/all' failed

make[1]: *** [externals/bundles/blahp/1.16.5.1/CMakeFiles/blahp.dir/all] Error 2

Makefile:160: recipe for target 'all' failed

make: *** [all] Error 2

 

   Any ideas on how to this built? Does anyone have prebuilt Debian 9 binaries?

 

--

Steve Chan

KBase - Environ Genomics & Systems Biology

Lawrence Berkeley National Lab