Hello!
I'm trying to rebuild the SOGo RPM for ensuring the sanity of my build
environment (for building the v3 tree later).
Some basic information:
OS: CentOS release 6.6 (Final)
Uname: Linux srvtmp-tst-01 2.6.32-504.1.3.el6.x86_64 #1 SMP
Tue Nov 11 17:57:25 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Repos: SOGoInverse SOGo Repository
1,256+29
baseCentOS-6 - Base
6,176+342
epelExtra Packages for Enterprise Linux 6 - x86_64
9,838+1,315
extras CentOS-6 - Extras
33+4
rpmforgeRHEL 6 - RPMforge.net - dag
4,718
rpmforge-extrasRHEL 6 - RPMforge.net - extras
711
updates CentOS-6 - Updates
681+67
SOGo-Package: sogo-2.2.15-1.centos6.src
Build-deps:
Getting requirements for sogo-2.2.15-1.centos6.src
--> Already installed : gcc-objc-4.4.7-11.el6.x86_64
--> Already installed : gnustep-base-1.23.0-1.x86_64
--> Already installed : gnustep-make-2.6.2-1.el6.x86_64
--> Already installed : sope49-appserver-devel-4.9-20150130_1664.el6.1.x86_64
--> Already installed : sope49-core-devel-4.9-20150130_1664.el6.1.x86_64
--> Already installed : sope49-ldap-devel-4.9-20150130_1664.el6.1.x86_64
--> Already installed : sope49-mime-devel-4.9-20150130_1664.el6.1.x86_64
--> Already installed : sope49-xml-devel-4.9-20150130_1664.el6.1.x86_64
--> Already installed : sope49-gdl1-devel-4.9-20150130_1664.el6.1.x86_64
--> Already installed : sope49-sbjson-devel-2.3.1-20150130_1664.el6.1.x86_64
--> Already installed : libmemcached-devel-0.49-1.x86_64
--> Already installed : sed-4.2.1-10.el6.x86_64
--> Already installed : samba-4.1.11-2.centos6.x86_64
--> Already installed : openchange-2.2.r4816.sogo-1.centos6.x86_64
--> Already installed : libcurl-devel-7.19.7-40.el6_6.4.x86_64
--> Already installed : lasso-devel-2.4.0-5.el6.x86_64
--> Already installed : libwbxml-devel-0.11.2-4.centos6.x86_64
No uninstalled build requires
First error:
# rpmbuild -bp ~/rpmbuild/SPECS/sogo.spec
error: File /root/rpmbuild/SOURCES/SOGo-%{sogo_version}.tar.gz: No such file or
directory
As far as I can tell, sogo_version is not defined anywhere, so I added
following entries to my .rpmmacros
%sope_major_version 4
%sope_minor_version 9
%sope_version 4.9
%sogo_version 2.2.15
After this the prep stage runs fine.
# rpmbuild -bp ~/rpmbuild/SPECS/sogo.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.WtRiHq
+ umask 022
+ cd /root/rpmbuild/BUILD
+ LANG=C
+ export LANG
+ unset DISPLAY
+ rm -fr '/root/rpmbuild/BUILDROOT/sogo-2.2.15-%{dist_suffix}.el6.x86_64'
+ cd /root/rpmbuild/BUILD
+ rm -rf SOGo-2.2.15
+ /usr/bin/gzip -dc /root/rpmbuild/SOURCES/SOGo-2.2.15.tar.gz
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd SOGo-2.2.15
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Next error occurs in the build phase:
+ . /usr/share/GNUstep/Makefiles/GNUstep.sh
/var/tmp/rpm-tmp.5ghWEI: line 32: /usr/share/GNUstep/Makefiles/GNUstep.sh: No
such file or directory
Default location unter CentOS 6 is /usr/lib64/GNUstep/Makefiles/GNUstep.sh
sogo.spec:177: %if 0%{?el7}
Guess this should read el6 then.
Fixing this leads to a compile error (for full output see attached file):
gcc NSCalendarDate+NGCards.m -c \
-MMD -MP -DSAML2_CONFIG=1 -Wall -DCOMPILE_FOR_GSTEP_MAKE=1
-DSOPE_MAJOR_VERSION=4 -DSOPE_MINOR_VERSION=9 -DSOPE_SUBMINOR_VERSION=0
-DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -fno-strict-aliasing -fexceptions
-fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS -pthread -fPIC -DDEBUG
-fno-omit-frame-pointer -Wall -DGSWARN -DGSDIAGNOSE -Wno-import -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic -fgnu-runtime -I. -I..
-I../../sope-core/NGExtensions/ -I../../sope-core -I../../sope-xml -I.
-I/root/GNUstep/Library/Headers -I/usr/local/include -I/usr/include \
-o obj/libNGCards.obj/NSCalendarDate+NGCards.m.o
CalendarDate+NGCards.m: In function '-[NSCalendarDate(NGCardsExtensions)
iCalFormattedDateTimeString]':
NSCalendarDate+NGCards.m:34: error: cannot find interface declaration for
'NXConstantString'
make[4]: *** [obj/libNGCards.obj/NSCalendarDate+NGCards.m.o] Error 1
make[3]: *** [internal-library-all_] Error 2
make[2]: *** [libNGCards.all.library.variables] Error 2
make[1]: *** [internal-all] Error 2
make[1]: Leaving directory `/root/rpmbuild/BUILD/SOGo-2.2.15/SOPE/NGCards'
make: *** [internal-all] Error 2
As far as I can tell now there are several problems:
- -I../../sope-core does not exist (and references to a directory outside the
build-tree of the current package)
- -I/root/GNUstep/Library/Headers does neither exist
- Interface declaration for NXConstantString s