[Fedora-directory-users] notes on building fds in etch and a failed build question
Ryan Braun
Ryan.Braun at ec.gc.ca
Mon Feb 25 15:08:50 UTC 2008
On Friday 22 February 2008 8:52 pm, Rich Megginson wrote:
> >>> The java components will be more tricky.
> >>>
> >>> For ldapjdk, it would be nice to be able to build from source in
> >>> dsbuild, but the jar file is cross platform and stable.
> >>>
> >>> JSS is different because it has some JNI code and should be compiled.
> >>> There are binaries available from ftp.mozilla.org but I don't know how
> >>> well they will work.
> >>>
> >>> None of the other java components listed at
> >>> http://directory.fedoraproject.org/wiki/Source and
> >>> http://directory.fedoraproject.org/wiki/BuildingConsole have been
> >>> rolled
> >>> into dsbuild.
> >>
> >> Ok java components we'll come back to later, I'm having trouble
> >> building mod_nss now.
> >>
> >> infinity:/usr/src/dsbuild/meta/ds# make BUILD_DS_ADMIN=1
> >> ADMINUTIL_SOURCE=1 MOD_NSS_SOURCE=1 ADMINSERVER_SOURCE=1
> >> SVRCORE_SOURCE=1 MOZLDAP_SOURCE=1 PERLDAP_SOURCE=1
> >
> > Add APXS=/usr/bin/apxs2 HTTPD=/usr/sbin/apache2
> >
> > Make sure you have the apache2-mpm-worker and apache2-threaded-dev
> > packages installed.
>
> One more thing - after you finish building, you'll have to comment out
> the following line in your $PREFIX/etc/dirsrv/admin-serv/httpd.conf:
> LoadModule log_config_module ......
>
> Then you should be able to run $PREFIX/sbin/setup-ds-admin.pl. I was,
> and both directory server and admin server are running.
Ok, adding
APXS=/usr/bin/apxs2
HTTPD=/usr/sbin/apache2
to both dsbuild/ds/mod_nss/Makefile and dsbuild/adminserver/Makefile worked
great. The dsbuild process finishes and appears to have compiled everything.
A couple little bugs creeped up during the build. I think it was during the
make install of ldapserver. One of the binaries (the first one I guess) was
copied to /opt/dirsrv/bin (the bin being a file not a directory) so
the /opt/dirsrv/bin directory isn't getting created. Quick fix was just
renaming /opt/dirsrv/bin to /opt/dirsrv/bin.something and rerunning make.
Executing /opt/dirsrv/bin.something looks like the binary might be
ldappasswd?
Second, there seems to be a missing library.
Starting admin server . . .
output: ERROR: ld.so: object '/opt/dirsrv/lib/libssl3.so' from LD_PRELOAD
cannot be preloaded: ignored.
output: apache2: Syntax error on line 123
of /opt/dirsrv/etc/dirsrv/admin-serv/httpd.conf: module log_config_module is
built-in and can't be loaded
Could not start the admin server. Error: 256
Failed to create and configure the admin server
Exiting . . .
I assumed the libssl3.so was supposed to be provided by building nss from
source. So I just symlinked the system's libssl3.so provided by libnss3-0d
back to /opt/dirsrv/lib/. Admin server seemed to startup fine after that
(and fixing the debian httpd module issue).
So after all that I have a running slapd now, and the admin server is
started. I can connect and bind as Directory Manager and browse the tree
using any old ldap client. browsing to localhost:ADMINSRV_PORT works and
brings up the web stuff. But when I try to connect to the adminserver using
the console from the 1.0.4 directory server install, it will connect but not
show any servers in the default view. Not sure if that is a 1.0.4 vs. 1.1.0
version problem, or a build issue with lacking java components.
Which leads me to my next question. The java components, are they only
required for running the console on your client machines? So building with
NOJAVA=1 will provide a fully working adminserver and ldapserver, just no
console binaries?
To be honest, I haven't really looked into the different post install
process' with 1.1.0 since 1.0.4 so the reason I could have missing entries in
the console could very well be my own fault :)
Also, if I want to fine tune the location of some of directories during
build. is it safe to modify the CONFIGURE_ARGS variable in the adminserver
and ldapserver's Makefile? I want to put /opt/dirsrv/etc/dirsrv
into /etc/dirsrv aswell as /opt/dirsrv/var into /var?
Ryan
More information about the Fedora-directory-users
mailing list