Portál AbcLinuxu, 31. května 2024 23:47

KDE 4.1.3 na OpenSolarisu

1.12.2008 11:25 | Přečteno: 1322× | non-linux | Výběrový blog

OpenSolaris se poslední dobou hodně zlepšil, při instalaci už přestal ignorovat cizí oddíly a bez keců do grubu přidal položku Windows. Snad brzo dojde i na Linux a ostatní. Ve 2008.11 RC2 je skoro všechno co potřebuju, ale co mu chybí je KDE. Balíčky KDE3 se sice dají stáhnout z Blastwave, ale protože je to už mrtvý projekt, nemá cenu se tím zabývat. KDE4 se musí ručně zkompilovat. Když už zjistíte jak na to, není to nic těžkého:

Překladač:

To je asi nejbolavější místo. Použití gcc nebo Sun Studio Express (který je v opensolarisích repozitářích) vede k bizarním chybám, které ale lidi z kde-solaris projektu nezajímají, protože používají Sun Studio 12. Kdo chce s vlky býti ..., takže je nutno sehnat SS12. Aby to nebylo tak jednoduché, je bezpodmínečně nutné použít SS12 se všemi dostupnými patchi. Já jsem to vyřešil tak, že jsem si ve VirtualBoxu nainstaloval Solaris 10 10/08 a v něm potom Sun Studio 12 (pozor, je nutné použít "Download Package Installer", aby šly aplikovat patche).

Zazáplatování překladače:

Menu - Applications - Utilities - Update Manager Je k tomu potřeba použít jméno a heslo - stačí to co bylo použito ke stažení Solarisu nebo SS. Pak zmáčknout na Check for Updates a jít se projít. Potom vybrat aktualizace a zmáčknout Install Updates a jít se projít. (já jsem pro sichr zaktualizoval úplně všechno, takže jsem se šel projít dvakrát)
(dobrá sranda je, že okno pro registraci Update Managera se v rozlišení 1024x768 nevejde na obrazovku :-) Dá se to obejít tak, že si spodní panel přesunete na levou hranu obrazovky)

Jakmile bylo všechno hotovo, zataroval jsem celý adresář /opt/SUNWspro, přenesl jej do OpenSolarisu a tam zase rozbalil.


Dále uvedený postup je v podstatě uveden na stránce KDE on Solaris, kde by měly být vždycky uvedeny aktuální informace.

Nejprve stažení Common Build Environment, což je sada nástrojů, používaných při kompilaci GNOME a podobných molochů:

cd ~ ; mkdir CBE1.7 ; cd CBE1.7
wget http://dlc.sun.com/osol/jds/downloads/cbe/test/desktop-cbe-1.7.0-rc1-x86.tar.bz2
tar xjf desktop-cbe-1.7.0-rc1-x86.tar.bz2
desktop-cbe-1.7.0-rc1/cbe-install
Na všechny otázky by měla stačit výchozí odpověď.

Potom je potřeba nainstalovat pár balíčků, které jsou při překladu nezbytné a bez nich to vyhučí s (často) poměrně záhadnými hláškami:

pkg install SUNWarc (kvůli podpoře -xc99=lib)
pkg install SUNWj6dev (kvůli FOSSberkeley-db)
pkg install SUNWgnome-common-devel (kvůli pkg-config)
pkg install SUNWcups (FOSScups se mi prostě nedařilo přeložit)
pkg install SUNWmercurial (abych mohl stáhnout zdrojáky)
pkg install SUNWperl-xml-parser (kvůli FOSSsharedmimeinfo)

Pro překlad FOSSnas je díky chybě potřeba workaround:

/usr/sfw/bin/wget http://xorg.freedesktop.org/archive/individual/util/xorg-cf-files-1.0.2.tar.bz2
/usr/bin/bunzip2 -cd xorg-cf-files-1.0.2.tar.bz2 | tar -xvf -
cd xorg-cf-files-1.0.2
pfexec cp X11.rules /usr/X11/lib/X11/config/
pfexec cp X11.tmpl /usr/X11/lib/X11/config/
pfexec cp xorg.cf /usr/X11/lib/X11/config/
pfexec cp xorgsite.def /usr/X11/lib/X11/config/
pfexec cp xorgversion.def /usr/X11/lib/X11/config/
pfexec cp xf86.rules /usr/X11/lib/X11/config/
pfexec cp xfree86.cf /usr/X11/lib/X11/config/
pfexec touch /usr/X11/lib/X11/config/date.def
pfexec touch /usr/X11/lib/X11/config/host.def
pfexec cp Imake.tmpl /usr/X11/lib/X11/config/ 

Na PC s 1.5GB RAM a 512 MB swapu mi překlad některých balíčků vyhučel na nedostatku místa, takže jsem musel přidat swap. Na zfs se nedá použít swap do souboru, je potřeba změnit velikost svazku:

swap -d /dev/zvol/dsk/rpool/swap
zfs set volsize=2G rpool/swap
swap -a /dev/zvol/dsk/rpool/swap
(originál návod zde)

Stažení spec souborů KDE4:

cd ~ ; mkdir KDE4.X.x ; cd KDE4.X.x/
hg clone https://solaris.bionicmutton.org/hg/kde4-specs-dev
cd kde4-specs-dev/specs
A sestavení:
. /opt/dtbld/bin/env.sh 
make

Přidání KDE do menu gdm:

Je třeba vytvořit soubor /usr/share/xsessions/kde.desktop, s následujícím obsahem:
[Desktop Entry]
Encoding=UTF-8
Name=KDE
Comment[en]=This session logs you into KDE
Exec=/opt/kde-4.1/bin/startkde
Icon=
Type=Application
KDE 4.1.3 na OpenSolarisu, obrázek 0

Následující problémy budou doufám brzo opraveny:

FOSSlibcdiowo a FOSSlibcdio selžou, v logu se objeví " ube: error: Illegal option to UBE: zla " Řešením je ručně upravit configure.sh v ~/packages/SOURCES/Solaris-LIBCDIOWO-0.78.2.tar.gz a ~/packages/SOURCES/Solaris-LIBCDIO-0.78.2.tar.gz a odstranit nepodporovanou volbu zla (zero length arrays):

--- Solaris.orig/configure.sh	2008-11-29 10:41:16.819618183 +0100
+++ Solaris/configure.sh	2008-11-29 12:17:22.334741748 +0100
@@ -12,11 +12,6 @@
     export CFLAGS="-xc99=%all ${CFLAGS}"
 fi
 
-good_cflags=`echo ${CFLAGS} | grep -- "-Wu,-zla"`
-if [ "x${good_cflags}" = "x" ] ; then
-    export CFLAGS="${CFLAGS} -Wu,-zla"
-fi
-
 good_cflags=`echo ${CFLAGS} | grep -- "-Xc"`
 if [ "x${good_cflags}" != "x" ] ; then
     export CFLAGS=`echo ${CFLAGS} | sed -e "s/-Xc//g"`

FOSSxine-lib selže, v logu se objeví pkgbuild: "pp.c", line 26: error: cannot find include file: <postproc/postproces s.h>. Je nutno upravit planar.61.diff z ~/packages/SOURCES/Solaris-XINE-LIB-1.1.10.tar.gz, aby vypadal takto:

Index: src/post/planar/pp.c
===================================================================
--- old/src/post/planar/pp.c    (revision 2848)
+++ new/src/post/planar/pp.c    (working copy)
@@ -23,7 +23,7 @@
 #include "xine_internal.h"
 #include "post.h"
 #include "xineutils.h"
-#include "postprocess.h"
+#include <ffmpeg/postproc/postprocess.h>
 #include <pthread.h>

 #define PP_STRING_SIZE 256 /* size of pp mode string (including all options) */
FOSSxine-lib selže i poté, ale trochu jinak. Tentokrát je v logu
pkgbuild: pkgbuild: File not found by glob: /var/tmp/pkgbuild-kdebuild/FOSSxine-lib-1.1.10-build/opt/foss/lib/xine/plugins/1.1.10/xineplug_vo_out_pgx32.so
pkgbuild: pkgbuild: File not found by glob: /var/tmp/pkgbuild-kdebuild/FOSSxine-lib-1.1.10-build/opt/foss/lib/xine/plugins/1.1.10/xineplug_vo_out_pgx64.so
PGX32 a PGX64 by měly být prehistorické grafické karty od Sunu, takže jsem dlouho nezkoumal, kde je problém a rovnou jsem ze souboru FOSSxine-libs.spec smazal řádky
%{_libdir}/xine/plugins/1.1.10/xineplug_vo_out_pgx32.so
%{_libdir}/xine/plugins/1.1.10/xineplug_vo_out_pgx64.so

FOSSboost selže, protože balíček s patchi pro solaris se jmenuje jinak než balíček se zdrojáky. Je potřeba jej přejmenovat:

wget http://solaris.bionicmutton.org/SRC/Solaris-BOOST-1.36.0.tar.gz -O ~/packages/SOURCES/Solaris-BOOST-1_36_0.tar.gz

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

1.12.2008 11:52 dad
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu
Odpovědět | Sbalit | Link | Blokovat | Admin

smyslem toho prispevku je asi nazornou formou presvedcit  ty vahajici windows-user, kteri by chteli vyzkouset unix/linux aby toho nechali rovnou.

1.12.2008 12:01 Zdenek
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu
Kez by! :-)
1.12.2008 13:29 Milan Jurik | skóre: 21 | blog: Komentare | Ova
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu
Nebo pouzit standardni prostredi?
1.12.2008 13:30 Milan Jurik | skóre: 21 | blog: Komentare | Ova
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu
Odpovědět | Sbalit | Link | Blokovat | Admin
Neni v repozitari krome SS Express verze i SS12 primo? Jen koukam, ze nebyla od jara aktualizovana verze. Jinak do OSolu jde SVR4 baliky doinstalovat a take aplikovat SVR4 patche, neni treba kvuli tomu mit S10, jen si dat pozor, nebot IPS a SVR4 spolu nekomunikuji (prislusne komentare prosim na pkg-discuss@opensolaris.org, ne mi...).
hajma avatar 1.12.2008 13:35 hajma | skóre: 27 | blog: hajma | Říčany
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu

SS12 jsem tam nenasel, mozna jsem se prehledl. Kazdopadne v tom Solarisu 10 mi to ten Update Manager zaktualizuje sam a nemusim nikde hledat patche. Jsem proste linej :-)

21 promarněných znaků
hajma avatar 2.12.2008 00:12 hajma | skóre: 27 | blog: hajma | Říčany
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu

tak balik sunstudio je, alespon podle toho, jak vypada v packagemanageru, prazdny a obsahuje pouze zavislost na sunstudioexpress

21 promarněných znaků
2.12.2008 10:58 Milan Jurik | skóre: 21 | blog: Komentare | Ova
Rozbalit Rozbalit vše Re: KDE 4.1.3 na OpenSolarisu
Ah, OK. Bohuzel express se lisi od 12, jednak je to snad vyvojova vetev a pak neobsahuje vsechny casti 12 (tak jako vzdy, ty, ktere Sun nevlastni).

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.