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

Re: [Freeipa-users] RHEL 5 Compiling ipa-client (only) from source



Viji V Nair wrote:
Hi,

I have done a manual compilation of ipa-client on an RHEL 5.2 x86_64 system. After struggling with a lot of errors I finally got it working by following the below steps.

Can anyone suggest is there anything wrong in my steps? Can I use the same steps to configure other clients also?

You'd be better off using the attached patch. This will let you do a build from the top-level and avoid all the version problems. Plus it can build rpms for you.

% make IPA_VERSION_IS_GIT_SNAPSHOT=no local-dist

The rpms will be in dist/rpms

rob


1. Download and un-compress freeipa source, http://freeipa.org/downloads/src/freeipa-1.2.1.tar.gz

# tar -zxvf freeipa-1.2.1.tar.gz
# cd freeipa-1.2.1/ipa-client

2. I have installed the following prerequisites after seeing the dependency errors.

# yum install autoconf automake pkgconfig.x86_64 libtool.x86_64 mozldap-devel.x86_64 krb5-devel.x86_64 openldap-devel.x86_64 python-ldap.x86_64

3. System was complaining about there is no version.m4 file, so I did a copy paste of

#  cp version.m4.in <http://version.m4.in> version.m4

4. System was telling I should add the contents of /usr/share/aclocal/libtool.m4 to aclocal.m4, so I did

#  cat /usr/share/aclocal/libtool.m4 >> aclocal.m4

5. After this I have complied the source using the following commands.

# ./autogen.sh
# make
# make install

6. When I started ipa-client-install, it was showing so many missing python module errors, so I have done the following steps to get rid of it.

a. Downloaded python-krbV-1.0.13-5.el5.x86_64.rpm from (http://download.fedora.redhat.com/pub/epel/5Server/x86_64/python-krbV-1.0.13-5.el5.x86_64.rpm) and installed

# rpm -ivh python-krbV-1.0.13-5.el5.x86_64.rpm

b. Manually build the other python modules.

# cd freeipa-1.2.1/ipa-python
# python setup.py.in <http://setup.py.in> build
# python setup.py.in <http://setup.py.in> install

c. Copied the required python modules to the actual location

# cp -a /usr/local/lib/python2.4/site-packages/ipaclient /usr/lib64/python2.4/site-packages/

d. Finally I got a version error, I have done a hard coding to fix it.

# cp version.py.in <http://version.py.in> /usr/lib/python2.4/site-packages/ipa/version.py
# cat /usr/lib/python2.4/site-packages/ipa/version.py

#VERSION="__VERSION__"
VERSION="1.2.1"
#NUM_VERSION=__NUM_VERSION__
NUM_VERSION="1.2.1"

Thanks & Regards
Viji


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

_______________________________________________
Freeipa-users mailing list
Freeipa-users redhat com
https://www.redhat.com/mailman/listinfo/freeipa-users

diff --git a/Makefile b/Makefile
index 6e69387..0fd28b8 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,7 @@
 include VERSION
 
-SUBDIRS=ipa-server ipa-admintools ipa-python ipa-client ipa-radius-server ipa-radius-admintools
+#SUBDIRS=ipa-server ipa-admintools ipa-python ipa-client ipa-radius-server ipa-radius-admintools
+SUBDIRS=ipa-python ipa-client
 
 PRJ_PREFIX=ipa
 
@@ -61,12 +62,12 @@ all: bootstrap-autogen
 
 bootstrap-autogen: version-update
 	@echo "Building IPA $(IPA_VERSION)"
-	cd ipa-server; if [ ! -e Makefile ]; then ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR); fi
+#	cd ipa-server; if [ ! -e Makefile ]; then ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR); fi
 	cd ipa-client; if [ ! -e Makefile ]; then ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR); fi
 
 autogen: version-update
 	@echo "Building IPA $(IPA_VERSION)"
-	cd ipa-server; ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR)
+#	cd ipa-server; ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR)
 	cd ipa-client; ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR)
 
 install: all
@@ -134,17 +135,17 @@ tarballs:
 	-mkdir -p dist/sources
 
         # ipa-server
-	mv dist/ipa/ipa-server dist/$(SERV_TARBALL_PREFIX)
-	rm -f dist/sources/$(SERV_TARBALL)
-	cd dist/$(SERV_TARBALL_PREFIX); ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR); make distclean
-	cd dist; tar cfz sources/$(SERV_TARBALL) $(SERV_TARBALL_PREFIX)
-	rm -fr dist/$(SERV_TARBALL_PREFIX)
+#	mv dist/ipa/ipa-server dist/$(SERV_TARBALL_PREFIX)
+#	rm -f dist/sources/$(SERV_TARBALL)
+#	cd dist/$(SERV_TARBALL_PREFIX); ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=$(LIBDIR); make distclean
+#	cd dist; tar cfz sources/$(SERV_TARBALL) $(SERV_TARBALL_PREFIX)
+#	rm -fr dist/$(SERV_TARBALL_PREFIX)
 
         # ipa-admintools
-	mv dist/ipa/ipa-admintools dist/$(ADMIN_TARBALL_PREFIX)
-	rm -f dist/sources/$(ADMIN_TARBALL)
-	cd dist; tar cfz sources/$(ADMIN_TARBALL) $(ADMIN_TARBALL_PREFIX)
-	rm -fr dist/$(ADMIN_TARBALL_PREFIX)
+#	mv dist/ipa/ipa-admintools dist/$(ADMIN_TARBALL_PREFIX)
+#	rm -f dist/sources/$(ADMIN_TARBALL)
+#	cd dist; tar cfz sources/$(ADMIN_TARBALL) $(ADMIN_TARBALL_PREFIX)
+#	rm -fr dist/$(ADMIN_TARBALL_PREFIX)
 
         # ipa-python
 	mv dist/ipa/ipa-python dist/$(PYTHON_TARBALL_PREFIX)
@@ -160,19 +161,19 @@ tarballs:
 	rm -fr dist/$(CLI_TARBALL_PREFIX)
 
         # ipa-radius-server
-	mv dist/ipa/ipa-radius-server dist/$(RADIUS_SERVER_TARBALL_PREFIX)
-	rm -f dist/sources/$(RADIUS_SERVER_TARBALL)
-	cd dist; tar cfz sources/$(RADIUS_SERVER_TARBALL) $(RADIUS_SERVER_TARBALL_PREFIX)
-	rm -fr dist/$(RADIUS_SERVER_TARBALL_PREFIX)
+#	mv dist/ipa/ipa-radius-server dist/$(RADIUS_SERVER_TARBALL_PREFIX)
+#	rm -f dist/sources/$(RADIUS_SERVER_TARBALL)
+#	cd dist; tar cfz sources/$(RADIUS_SERVER_TARBALL) $(RADIUS_SERVER_TARBALL_PREFIX)
+#	rm -fr dist/$(RADIUS_SERVER_TARBALL_PREFIX)
 
         # ipa-radius-admintools
-	mv dist/ipa/ipa-radius-admintools dist/$(RADIUS_ADMINTOOLS_TARBALL_PREFIX)
-	rm -f dist/sources/$(RADIUS_ADMINTOOLS_TARBALL)
-	cd dist; tar cfz sources/$(RADIUS_ADMINTOOLS_TARBALL) $(RADIUS_ADMINTOOLS_TARBALL_PREFIX)
-	rm -fr dist/$(RADIUS_ADMINTOOLS_TARBALL_PREFIX)
+#	mv dist/ipa/ipa-radius-admintools dist/$(RADIUS_ADMINTOOLS_TARBALL_PREFIX)
+#	rm -f dist/sources/$(RADIUS_ADMINTOOLS_TARBALL)
+#	cd dist; tar cfz sources/$(RADIUS_ADMINTOOLS_TARBALL) $(RADIUS_ADMINTOOLS_TARBALL_PREFIX)
+#	rm -fr dist/$(RADIUS_ADMINTOOLS_TARBALL_PREFIX)
 
 	# ipa-server/selinux
-	cp dist/sources/$(SERV_TARBALL) dist/sources/$(SERV_SELINUX_TARBALL)
+#	cp dist/sources/$(SERV_TARBALL) dist/sources/$(SERV_SELINUX_TARBALL)
 
 
 rpmroot:
@@ -228,7 +229,8 @@ rpm-ipa-server-selinux:
 	cp rpmbuild/RPMS/*/$(PRJ_PREFIX)-server-selinux-$(IPA_VERSION)-*.rpm dist/rpms/
 	cp rpmbuild/SRPMS/$(PRJ_PREFIX)-server-selinux-$(IPA_VERSION)-*.src.rpm dist/srpms/
 
-rpms: rpmroot rpmdistdir rpm-ipa-server rpm-ipa-admin rpm-ipa-python rpm-ipa-client rpm-ipa-radius-server rpm-ipa-radius-admintools rpm-ipa-server-selinux
+#rpms: rpmroot rpmdistdir rpm-ipa-server rpm-ipa-admin rpm-ipa-python rpm-ipa-client rpm-ipa-radius-server rpm-ipa-radius-admintools rpm-ipa-server-selinux
+rpms: rpmroot rpmdistdir rpm-ipa-python rpm-ipa-client
 
 repodata:
 	-createrepo -p dist

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