Kompilacja KDE 3.0.3 za pomocą gcc-3.2
Witam wszystkich!
Otóż postanowiłem sobie sprawdzić tezę jakoby skompilowane KDE działa
znacznie szybciej od tego w paczkach a do tego skopmpilować to
najnowszym gcc które podobno generuje znacznie lepszy i szybszy kod
(szczególnie z C++) niż starsze wersje. Wiem że to jest karkołomne -
kiedyś już parę razy próbowałem kompilować gcc (wcześniejsze wersje i
jakoś mi się nie udało). Co zrobiłem: skompilowałem gcc, zainstalowałem
w /usr/local/gcc3.2, poustawiałem wszystkie zmienne (LD, PATH) - to jest
raczej OK.
Wywaliłem stare gcc ze starymi zależnościami:
g++ g++-2.95 gcc gcc-2.95 glade-gnome-db gnome-common gobjc gobjc-2.95
libguile-dev libguilegnome-dev libguilegtk-dev libltdl3-dev
libobgnome-dev libobgtk-dev libstdc++2.10-dev libtool
Skopmpilowałem (debian/rules binary) najpierw arts'a (bo qt potrzebuje
mcopidl który tam siedzi) i zainstalowałem na starego: dpkg -i
arts-cośtam.deb
Zepsuło się stare (3.0.2) KDE - więc je wywaliłem (mam spis tego co
wywaliłem - a jest duży!) apt-get remove libqt3.
Skompilowałem QT według INSTALL - działają programy przykładowe w kat.
/usr/local/qt. Oczywiście ścieżki dopisane do /etc/ld.so.conf i PATH).
Skompilowałem kdelibs - zrobiła się paczka bez problemu. Musiałem
zainstalować "oszukaną" paczkę qt zrobioną equivs żeby kdelibs się
chciało skompilować. Zainstalowałem to wszystko: dpkg -i *.deb
Teraz kompilowałem kdebase. I tu kaszana (lekka). Coś zaczęło mi
krzyczeć że nie ma jakiegoś pliku libnsplugin.la i podobnych -
powywalałem je z plików które odpowiadały za robienie paczek (teraz ich
nie ma ale to były coś a'la kioslave.conf w katalogu ze źródłami). Po
wywaleniu tego (to chyba jakaś wtyczka do netscapa) ręcznie dorobiłem
paczki - patrzyłem co było w debian/rules w sekcji common i robiłem to
samo ręcznie. Paczki się zrobiły:
kaddressbook_3.0.2-1_i386.deb
kdebase-3.0.3
kdeprint_3.0.2-1_i386.deb
kicker_3.0.2-1_i386.deb
konsole_3.0.2-1_i386.deb
ksysguard_3.0.2-1_i386.deb
xfonts-konsole_3.0.2-1_all.deb
kappfinder_3.0.2-1_i386.deb
kdebase-bin_3.0.2-1_i386.deb
kdesktop_3.0.2-1_i386.deb
kioslave_3.0.2-1_i386.deb
kpager_3.0.2-1_i386.deb
ktip_3.0.2-1_i386.deb
kate_3.0.2-1_i386.deb
kdebase-data_3.0.2-1_all.deb
kdm_3.0.2-1_i386.deb
klipper_3.0.2-1_i386.deb
kpersonalizer_3.0.2-1_i386.deb
kwin_3.0.2-1_i386.deb
kcontrol_3.0.2-1_i386.deb
kdebase-dev_3.0.2-1_i386.deb
kfind_3.0.2-1_i386.deb
kmenuedit_3.0.2-1_i386.deb
kscreensaver_3.0.2-1_i386.deb
kxkb_3.0.2-1_i386.deb
kdcop_3.0.2-1_i386.deb
kdebugdialog_3.0.2-1_i386.deb
khelpcenter_3.0.2-1_i386.deb
konqueror_3.0.2-1_i386.deb
ksmserver_3.0.2-1_i386.deb
libkonq4_3.0.2-1_i386.deb
chciałem to zainstalować ręcznie jak poprzednio - dpkg -i *.deb ale
wyrzucił mnie mówiąc że kdebase chce nadpisać na jakiś plik który jest w
pakie kaddressbook - rzeczywiście w kdebase jest binarka kaddressbook
która też jest w kaddressbook, i tak jest z każdym pakietem. Jeśli
chciałem zainstalować wszystko bez kdebase to okazywało się że kdebase
jest wymagane - błędne koło!
Obeszłem to instalując wsio na siłę - dpkg -i --force-all *.deb
KDM się skonfigurował - teraz się uruchamia ale KDE samo nie działa. Gdy
włączę co innego np. GNOMEa i próbuję uruchomić dajmy na to kate
dostaję:
cayco@linux:~$ kate
fcntl: Błędny deskryptor pliku
fcntl: Błędny deskryptor pliku
kdeinit: Shutting down running client.
KCrash: crashing.... crashRecursionCounter = 2
KCrash: Application Name = kded path = <unknown> pid = 741
DCOP aborting call from 'anonymous-740' to 'kded'
DCOP aborting call from 'anonymous-752' to 'kded'
ERROR: KUniqueApplication: DCOP communication error!
ERROR: KUniqueApplication: DCOP communication error!
kio (KLauncher): ERROR: KLauncher: KDEInit communication error!
Commiting suicide! Mutex destroy failure: Urządzenie lub zasoby są
zajęte fcntl: Błędny deskryptor pliku
fcntl: Błędny deskryptor pliku
---------------------------------
It looks like dcopserver is already running. If you are sure
that it is not already running, remove /home/cayco/.DCOPserver_linux__0
and start dcopserver again.
---------------------------------
KCrash: crashing.... crashRecursionCounter = 2
KCrash: Application Name = kbuildsycoca path = <unknown> pid = 880
fcntl: Błędny deskryptor pliku
fcntl: Błędny deskryptor pliku
fcntl: Błędny deskryptor pliku
fcntl: Błędny deskryptor pliku
kdeinit: Shutting down running client.
KCrash: crashing.... crashRecursionCounter = 2
KCrash: Application Name = kate path = <unknown> pid = 870
kio (KLauncher): ERROR: KLauncher: KDEInit communication error!
Commiting suicide! Mutex destroy failure: Urządzenie lub zasoby są
zajęte fcntl: Błędny deskryptor pliku
fcntl: Błędny deskryptor pliku
---------------------------------
It looks like dcopserver is already running. If you are sure
that it is not already running, remove /home/cayco/.DCOPserver_linux__0
and start dcopserver again.
---------------------------------
KDE Daemon (kded) already running.
i 3 sigi 11. Jak zapewne domyślają się ci którzy doszli w czytaniu tego
tak daleko zapadnie teraz sakramentalne pytanie:
Czego nie robię źle? ;-)
Może chociaż jakaś mała rada? To wszystko kompilowało mi się w sumie ze
12h i nie chcę stracić na marne tego czasu. Zaznaczam że Debiana mam od
ok. miesiąca - wcześniej miałem Red Hata przez ok. 4,5 roku. Proszę o
pomoc!
cayco
Reply to: