That was part of it! ;-)
Is the previously mentioned error still occurring in the virtual machine build? It may have originally arisen due to the old KDE3.5.10 header files, and krb5 may be a red herring. I will wait for the build log from the virtual machine before passing judgment.
The error occurred again in my new environment. The build did not fail until about an hour later, at the lgssapi_krb5 test. I don't know how close that is to the end of the build, but I suspect pretty close. That much is good news!
Like the avahi test, I thought I had better test the build process with krb5 installed and not installed. I built the krb5 (kerberos) package and installed in my build environment.
I ran the build of kdelibs with krb5 installed.
Same result, failing at the lgssapi_krb5 test.
I'm attaching another log of the build output.
I'm attaching a copy of the krb5 package contents.
Of course, krb5/kerberos should not be a build requirement, only an option.
When building kdelibs in my new build environment I notice the following messages when building. I don't know whether the messages are harmless or meaningful.
configure: WARNING: Could not find krb5-config (Note: the file exists at /usr/kerberos/bin/krb5-config)
wrong input (flag != 4) at admin/conf.change.pl line 117, <> line 1997.
config.status: WARNING: 'kdecore/kde-config.cpp.in' seems to ignore the --datarootdir setting (I do not have that option set in my build script.)
(repeats several times with different line numbers) ltdl.c: In function 'sys_dl_open': ltdl.c:605: warning: unused parameter 'loader_data' (this error was in the arts build too)
ksock.cpp: In member function 'long unsigned int KSocket::ipv4_addr()': ksock.cpp:214: warning: 'peerAddress' is deprecated (declared at kextsock.h:1001) ksock.cpp: In static member function 'static bool KSocket::initSockaddr(ksockaddr_in*, const char*, short unsigned int, int)': ksock.cpp:244: warning: 'lookup' is deprecated (declared at kextsock.h:984) ksock.cpp:253: warning: 'address' is deprecated (declared at kextsock.h:1078) ksock.cpp: In member function 'virtual void KServerSocket::slotAccept(int)': ksock.cpp:420: warning: '__comp_ctor ' is deprecated (declared at ksock.cpp:105)
kextsock.cpp: In member function 'bool KExtendedSocket::setAddressReusable(bool)': kextsock.cpp:513: warning: 'setAddressReusable' is deprecated (declared at kextsock.h:1020) kextsock.cpp: In member function 'const KSocketAddress* KExtendedSocket::localAddress()': kextsock.cpp:728: warning: 'localAddress' is deprecated (declared at kextsock.h:992) kextsock.cpp: In member function 'const KSocketAddress* KExtendedSocket::peerAddress()': kextsock.cpp:743: warning: 'peerAddress' is deprecated (declared at kextsock.h:1001) kextsock.cpp: In member function 'virtual int KExtendedSocket::listen(int)': kextsock.cpp:869: warning: 'setAddressReusable' is deprecated (declared at kextsock.cpp:521) kextsock.cpp: In member function 'virtual int KExtendedSocket::connect()': kextsock.cpp:1051: warning: 'setAddressReusable' is deprecated (declared at kextsock.cpp:521) kextsock.cpp:1073: warning: 'setAddressReusable' is deprecated (declared at kextsock.cpp:521) kextsock.cpp: In member function 'void KExtendedSocket::connectionEvent()': kextsock.cpp:1876: warning: 'setAddressReusable' is deprecated (declared at kextsock.cpp:521) kextsock.cpp:1900: warning: 'setAddressReusable' is deprecated (declared at kextsock.cpp:521) kextsock.cpp: In static member function 'static int KExtendedSocket::resolve(KSocketAddress*, QString&, QString&, int)': kextsock.cpp:2008: warning: 'resolve' is deprecated (declared at kextsock.cpp:1989)
kpassdlg.cpp: In static member function 'static int KPasswordDialog::getPassword(QCString&, QString, int*)': kpassdlg.cpp:559: warning: '__comp_ctor ' is deprecated (declared at kpassdlg.cpp:325) kpassdlg.cpp: In static member function 'static int KPasswordDialog::getNewPassword(QCString&, QString)': kpassdlg.cpp:574: warning: '__comp_ctor ' is deprecated (declared at kpassdlg.cpp:325)
kfilemetainfo.cpp: In static member function 'static KFileMetaInfoItem::Data* KFileMetaInfoItem::Data::makeNull()': kfilemetainfo.cpp:91: warning: 'setObject' is deprecated (declared at ../../kdecore/kstaticdeleter.h:85) kfilemetainfo.cpp: In static member function 'static KFileMetaInfo::Data* KFileMetaInfo::Data::makeNull()': kfilemetainfo.cpp:774: warning: 'setObject' is deprecated (declared at ../../kdecore/kstaticdeleter.h:85) kfilemetainfo.cpp: In destructor 'virtual KFileMetaInfoProvider::~KFileMetaInfoProvider()': kfilemetainfo.cpp:927: warning: 'setObject' is deprecated (declared at ../../kdecore/kstaticdeleter.h:85) kfilemetainfo.cpp: In static member function 'static KFileMetaInfoGroup::Data* KFileMetaInfoGroup::Data::makeNull()': kfilemetainfo.cpp:1464: warning: 'setObject' is deprecated (declared at ../../kdecore/kstaticdeleter.h:85)
(repeats several times) libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libSM.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libICE.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libtqt.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libX11.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libXext.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libstdc++.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libstdc++.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libstdc++.la' seems to be moved libtool: link: warning: `/usr/lib/gcc/i486-slackware-linux/4.2.4/../../../libstdc++.la' seems to be moved (the files exists at /usr/lib/libstdc++.la so I don't know what is checking in that directory.)
I hope this helps!
<snip>
The error occurred again in my new environment. The build did not fail until about an hour later, at the lgssapi_krb5 test. I don't know how close that is to the end of the build, but I suspect pretty close. That much is good news!
</snip>
OK, I think I may have found the offending patch.
In this file: kdelibs/kioslave/http/Makefile.am
Replace this:
-lgssapi_krb5
with this:
$(GSSAPI_LIBS)
I do not know why/how it got changed to begin with, but I will revert that change if the build gets farther with the above modification.
Thanks!
Tim
OK, I think I may have found the offending patch.
In this file: kdelibs/kioslave/http/Makefile.am
Replace this:
-lgssapi_krb5
with this:
$(GSSAPI_LIBS)
Okay. Here's the scoop. This took most of the day because each compile takes so long. I believe we are getting closer. (Bear with me!)
I made the Makefile.am change as suggested.
I kept krb5 installed.
The build failed exactly as before.
Some things I noticed that might help further.
==================================================== 1. With the change to the Makefile.am file, the final Makefile changed as expected:
WAS: kio_http_la_LDFLAGS = $(all_libraries) $(GSSAPI_RPATH) -module $(KDE_PLUGIN) -lgssapi_krb5
CHANGED TO: kio_http_la_LDFLAGS = $(all_libraries) $(GSSAPI_RPATH) -module $(KDE_PLUGIN) $(GSSAPI_LIBS)
No more build fails at the previous point.
Conclusion: Makefile.am should be patched.
==================================================== 2. A suspect message in the configuration messages:
./configure: line 48785: test: =: unary operator expected
Line 48785 in the configure file: if test $system_has_xrandr = no; then
Conclusion: Possibly harmless but who knows.
==================================================== 3. Some suspicious text in kdelibs/kioslave/http/configure.in.in. Should there be a space before the dash?
IS: ${GSSAPI_LIBS}-lgssapi_krb5
CHANGE TO?: ${GSSAPI_LIBS} -lgssapi_krb5
Conclusion: ??
==================================================== I ran the build again. The build failed again but at a new point.
The end of the build output:
autostart.cpp: In constructor 'AutoStart::AutoStart(bool)': autostart.cpp:51: error: 'getenv' was not declared in this scope make[3]: *** [autostart.lo] Error 1 make[3]: Leaving directory `/tmp/kdelibs/kinit' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/kdelibs/kinit' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/kdelibs' make: *** [all] Error 2
I'm no c++ programmer, but I searched the web a bit and then wondered whether a missing '#include <stdlib.h>' might help. I added that in the autostart.cpp headers.
I again ran the build script. The build failed again but at a new point.
Maybe this is a gcc thing because I'm sure the package compiles for you. I'm using gcc 4.2.4.
Conclusion: Patch autostart.cpp.
==================================================== I ran the build again.
The end of the build output:
kmmainview.cpp: In member function 'void KMMainView::slotServerConfigureAccess()': kmmainview.cpp:700: error: 'KProcess' was not declared in this scope kmmainview.cpp:700: error: 'proc' was not declared in this scope kmmainview.cpp:700: error: expected type-specifier before 'KProcess' kmmainview.cpp:700: error: expected `;' before 'KProcess' kmmainview.cpp:702: error: 'KProcess' is not a class or namespace make[3]: *** [kmmainview.lo] Error 1 make[3]: Leaving directory `/tmp/kdelibs/kdeprint/management' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/kdelibs/kdeprint' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/kdelibs' make: *** [all] Error 2
I tried the same remedy by adding '#include <stdlib.h>'.
I ran the build again. Nope.
I again checked the web and saw something about including the header file that defines KProcess. A quick grep and I found smbview.h. In kmmainview.cpp I added #include "smbview.h".
I ran the build again. Nope.
Conclusion: Back to you!
OK, I think I may have found the offending patch.
In this file: kdelibs/kioslave/http/Makefile.am
Replace this:
-lgssapi_krb5
with this:
$(GSSAPI_LIBS)
Okay. Here's the scoop. This took most of the day because each compile takes so long. I believe we are getting closer. (Bear with me!)
I made the Makefile.am change as suggested.
I kept krb5 installed.
The build failed exactly as before.
Some things I noticed that might help further.
====================================================
- With the change to the Makefile.am file, the final Makefile changed as
expected:
WAS: kio_http_la_LDFLAGS = $(all_libraries) $(GSSAPI_RPATH) -module $(KDE_PLUGIN) -lgssapi_krb5
CHANGED TO: kio_http_la_LDFLAGS = $(all_libraries) $(GSSAPI_RPATH) -module $(KDE_PLUGIN) $(GSSAPI_LIBS)
No more build fails at the previous point.
Conclusion: Makefile.am should be patched.
==================================================== 2. A suspect message in the configuration messages:
./configure: line 48785: test: =: unary operator expected
Line 48785 in the configure file: if test $system_has_xrandr = no; then
Conclusion: Possibly harmless but who knows.
==================================================== 3. Some suspicious text in kdelibs/kioslave/http/configure.in.in. Should there be a space before the dash?
IS: ${GSSAPI_LIBS}-lgssapi_krb5
CHANGE TO?: ${GSSAPI_LIBS} -lgssapi_krb5
Conclusion: ??
==================================================== I ran the build again. The build failed again but at a new point.
The end of the build output:
autostart.cpp: In constructor 'AutoStart::AutoStart(bool)': autostart.cpp:51: error: 'getenv' was not declared in this scope make[3]: *** [autostart.lo] Error 1 make[3]: Leaving directory `/tmp/kdelibs/kinit' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/kdelibs/kinit' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/kdelibs' make: *** [all] Error 2
I'm no c++ programmer, but I searched the web a bit and then wondered whether a missing '#include <stdlib.h>' might help. I added that in the autostart.cpp headers.
I again ran the build script. The build failed again but at a new point.
Maybe this is a gcc thing because I'm sure the package compiles for you. I'm using gcc 4.2.4.
Conclusion: Patch autostart.cpp.
==================================================== I ran the build again.
The end of the build output:
kmmainview.cpp: In member function 'void KMMainView::slotServerConfigureAccess()': kmmainview.cpp:700: error: 'KProcess' was not declared in this scope kmmainview.cpp:700: error: 'proc' was not declared in this scope kmmainview.cpp:700: error: expected type-specifier before 'KProcess' kmmainview.cpp:700: error: expected `;' before 'KProcess' kmmainview.cpp:702: error: 'KProcess' is not a class or namespace make[3]: *** [kmmainview.lo] Error 1 make[3]: Leaving directory `/tmp/kdelibs/kdeprint/management' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/kdelibs/kdeprint' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/kdelibs' make: *** [all] Error 2
I tried the same remedy by adding '#include <stdlib.h>'.
I ran the build again. Nope.
I again checked the web and saw something about including the header file that defines KProcess. A quick grep and I found smbview.h. In kmmainview.cpp I added #include "smbview.h".
I ran the build again. Nope.
Conclusion: Back to you!
OK, recommended changes have been committed to SVN in revision 1169004. I have also included a fix for the kdeprint error; please update your copy of the Trinity source and let me know if you get any further!
Thanks,
Tim
I finally built kdelibs from svn!
We missed one patch from the previous build report:
In kdelibs/kinit/autostart.cpp, need to add:
#include <stdlib.h>
Without that include statement I was unable to build the package. Worked great with the statement.
I did not build with avahi or krb5 installed. I will run another build with those packages installed.
Final package size was aboutt 18.8 MB. Sounds about right compared to the stock KDE 3.5.10 (18.3 MB).
Two down, a bunch to go. kdebase is next!
I finally built kdelibs from svn!
Great!
We missed one patch from the previous build report:
In kdelibs/kinit/autostart.cpp, need to add:
#include <stdlib.h>
Without that include statement I was unable to build the package. Worked great with the statement.
Looks like I forgot to commit changes to that file; they are now in as revision 1169302.
I did not build with avahi or krb5 installed. I will run another build with those packages installed.
Final package size was aboutt 18.8 MB. Sounds about right compared to the stock KDE 3.5.10 (18.3 MB).
Two down, a bunch to go. kdebase is next!
Hopefully things will run smoother now...