From kde Sat May 30 20:51:34 1998 From: "Barry M. Caceres" Date: Sat, 30 May 1998 20:51:34 +0000 To: kde Subject: Beta 4 install info X-MARC-Message: https://marc.info/?l=kde&m=90221983430288 I am just completing a compile of the KDE and qt libraries on Solaris 2.6 for an Ultra-5. I came across some problems, and I thought I would share their solutions in case anyone else is having these problems. First off, don't use CC/cc to compile. Use g++/gcc instead. This is because CC (4.2) does not yet support the initialization of a static constant class data member within a class declaration. Some of the code uses this and it will cause problems. NOTE: QT will compile just fine with CC, but KDE (at least kdesupport) will not and you cannot link a g++ compiled KDE to a CC compiled QT library due to the different name mangling schemes (the linker cannot find the the QT functions within the QT library). If you do not have gcc/g++ on your system then you can obtain binary versions in package format for Solaris 2.6 from http://www.sunfreeware.com/solaris_2.6.html. This site is great since you can use the pkgadd utility to install the gnu utilities. I used gcc/g++ version 2.8.1. G++ bugs do be weary of ------------------------ The KDE and QT libraries all compile using the -02 optimization option of g++. This option must have some bugs since on some files it causes the compiler to dump out and on others it causes the compiler to into an infinite loop. The easy fix is to remove this option from all the Makefiles, but this will make your window manager run a bit slower. The better fix is to let it compile as must as it can, when an error or infinite loop occurs do the following: 1. Use control-C to interrupt make if in an infinite loop. 2. change to the directory where the error is occurring 3. Edit the makefile CXXFLAGS/CFLAGS to remove -O2 4. Make ONLY the target that failed (this may be foo.o or foo.lo) 5. Restore the makefile to its original state 6. return to the main directory 7. type make again In some directories this gets annoying because there may be quite a few files which you will have to edit the makefile for, but at least you know that most of the code is in fact optimized. Be careful to make with the .lo suffix in some of kde directories since making the .o and then reverting the makefile will only cause the problem to repeat itself (i.e.: the .o is made, but the recursive make attempts to make the .lo which does not exist and then move it to the .o file name, since the -02 has been restored the .lo will fail again). qt, kdesupport, kdelibs, kdebase, kdenetwork, kdeadmin ------------------------------------------------------- Most if not all files compile fine. With the exception of the -02 bug in some of the above. kdegames -------- Didn't remember encountering the -O2 bug, BUT qt's "moc" program did go into an infinite loop when trying to make the ksnake game. I simply replaced the "all" and "install" targets in ksnake to do nothing so that this directory would be skipped. kdeutils -------- generated makefiles in the "karm" directory had spaces at the beginning of some lines. These spaces I replaced with a tab and the directory then compiled fine. kdegraphics ------------ Could not get kdvi to compile--errors in makefile (unexpected eof at line 299). I tried replacing all spaces at beginings of lines with tabs and this still didn't help. If anyone has figured this one out I'd like to know. To work around I simply removed the "kdvi" directory from the subdirs list in the main makefile for kdegraphics. kdemulitmedia ---------------- kmid and kmidi directories had problems finding needed include files in /usr/include/sys (specifically they needed sys/soundcard.h and sys/stdtypes.h). I simply did not make these directories (i.e: i removed them from the SUBDIRS definition in the main makefile and everything else compiled fine). This problem probably occurred, because I don't have any optional sound hardware for my Ultra-5. Well, I hope this helps. If anyone knows why I can't build ksnake or what the fix is for the kdvi Makefile please let me know. Thanks. -Barry M. Caceres barryc@idea-center.com -- Send posts to: kde@lists.netcentral.net Send all commands to: kde-request@lists.netcentral.net Put your command in the SUBJECT of the message: "subscribe", "unsubscribe", "set digest on", or "set digest off" ********************************************************************** This list is from your pals at NetCentral