Raportin fokuksessa on paasiallisesti itseni ja Ilkka Jylhän yhteinen pakkomielle kääntää irssi koulun palvelimelle kotihakemistoihimme hyrräämään, vaikka weechatin olemme sinne jo kääntäneet. Yritys epäonnistui, joten don't try this at home.
Perus-irkkausta
Klo 15.50 kävin tarkistamassa luokkamme IRC-kanavan (#tn1pe-2012s) weechatillä käyttäen ssh:ta ja screeniä.ssh a1202425@myy.haaga-helia.fi
screen -r
Irssin kääntöympäristö ja kohdejärjestelmä
Käytän weechattiä, koska en ole toistaiseksi saanut irssiä käännettyä koulun palvelimella olevalle käyttäjälleni. Niinpä päätin ottaa härkää sarvista ja kääntää irssin lähdekoodista käyttäen toista järjestelmää. Valitsin käyttöjärjestelmäksi Red Hatiä läheistä sukua olevan CentOS:n, sillä koulun palvelin käyttää Red Hatiä. Näin maksimoin binäärin mahdollisuudet toimia kohdejärjestelmässä.Aloitin asentamalla VirtualBoxin miniläppäriini koulullamme.
sudo apt-get install virtualbox && virtualboxKäynnistin VirtualBoxissa CentOS:in LiveDVD:n. Järjestelmä kääntyi tahmaisesti. Aloin kääntää GCC:tä noin klo 15.55.
yum install gccKone kuitenkin jäätyi täysin ja lähdin kotiin kääntämään GCC:tä, irssiä ja muita paketteja kotona olevan iMacin VirtualBoxilla. Kotona jatkoin projektia noin klo 19.30. En jaksanut ladata DVD:tä, joten latasin CentOS:in LiveCD:n ja käynnistin sen VirtualBoxissani. Käynnistin sen suosiolla tekstikäyttöliittymään, koska en tehnyt graafisella käyttöliittymällä tässä hommassa mitään.
Irssin kääntäminen CentOS:lla
CentOS käynnistyi nätisti. Asensin CentOS:iin GCC:n, maken ja muutamia muita olennaisia irssin kääntämisen kannalta olennaisia paketteja.yum install gcc gcc-c++ kernel-devel makeKäynnistin irssin kokeillakseni, toimiiko se.
yum install glib2 glib2-devel ncurses-devel
mkdir temp && cd temp
wget http://irssi.org/files/irssi-0.8.15.tar.gz
tar xzvf irssi-0.8.15.tar.gz
cd irssi-0.8.15
./configure --exec-prefix=$HOME --prefix=$HOME
make && make install
irssiSe ei toiminut, koska käyttämääni irkkipalvelimeen ei voitu yhdistää roottina. Niinpä loin uuden käyttäjän nimeltä erkkimon ja siirsin irssin binäärin sen kotihakemistoon.
useradd erkkimon -m
passwd erkkimon
mkdir /home/erkkimon/bin && chown erkkimon /home/erkkimon/bin
cp /root/bin/irssi /home/erkkimon/bin
Binäärin siirto kohdejärjestelmään ja binäärin testaus
Sitten kirjauduin erkkimonille, käynnistin sillä irssin, yhdistin palvelimeen ja kirjauduin ryhmämme irkkikanavalle onnistuneesti. Tein kirjautumisen TTY2:ssa välttääkseni sisäänkirjautumisongelmat rootille, sillä olin liveympäristössä.su erkkimonHomma toimi. Tämän jälkeen TTY1:ssä roottina ja lähetin irssin käännetyn binäärin SCP:llä myy.haaga-helia.fi -palvelimelle oman käyttäjäni (a1202425) sijaintiin ~/bin.
irssi
/connect irc.cs.hut.fi
/join tn1pe-2012s
/exit
scp /root/bin/irssi a1202425@myy.haaga-helia.fi:/home8/25/a1202425/bin/irssiTämän jälkeen kirjauduin SSH:lla myy.haaga-helia.fi -palvelimelle kokeillakseni, toimiko juuri käännetty binääri myös kohdejärjestelmässä.
ssh a1202425@myy.haaga-helia.fi
irssi
irssi: error while loading shared libraries: requires glibc 2.5 or later dynamic linker
Epäonnistunut yritys kääntää GLIB irssin binääriin
Irssi ei toiminut, luultavasti johtuen liian vanhasta GLIB:istä. Niinpä päätin vielä kokeilla kääntää irssin virtuaalikoneella olevalla CentOS:lla käyttäen --enable-static -attribuuttia configure-skriptiä ajettaessa. Tämän jälkeen käänsin lähdekoodin uudelleen binääriksi ja siirsin sen myy.haaga-helia.fi -palvelimelle ylikirjoittaen vanhan binäärin kotihakemistoni bin-hakemistossa.cd /root/temp/irssi-0.8.15Tämäkään ei toiminut. Lopputuloksena oli sama errori kuin aiemminkin.
./configure --exec-prefix=$HOME --prefix=$HOME --enable-static
make && make install
scp /root/bin/irssi a1202425@myy.haaga-helia.fi:/home8/25/a1202425/bin/irssi
ssh a1202425@myy.haaga-helia.fi
irssi
irssi: error while loading shared libraries: requires glibc 2.5 or later dynamic linker
Ei kommentteja:
Lähetä kommentti