30 Eylül 2015 Çarşamba

Libreoffice Derlemek ve Gerrit İle Yama Göndermek

Libreoffice'in ne olduğunu bilmeyen de yoktur ama yine de kısaca bahsetmiş olayım. Libreoffice bir masaüstü ofis paketidir. Uzun da bir geçmişe sahip. Staroffice adı altında başlayıp, daha sonra Openoffice olarak geliştirilmiş ve en son Libreoffice adıyla hala geliştirilmeye devam ediyor. Bunun güzel bir yanı da uğraştığımız birşey hakkında rahatça belge bulabilmek oluyor.

Gelelim derleme işlemine. Bekleme kısmını saymazsak çok da zor bir yanı yok. Büyük bir proje olduğu için birazcık sabırla beklemek gerekiyor. Ben Ubuntu 15.04 kullandığımdan izlediğim adımları yazacağım. Tüm Linux türevleri için de sayfa oldukça güzel anlatmış.

Bağımlı paketleri kuralım:

$ sudo apt-get build-dep libreoffice

Depoyu yerelimize alalım ve proje dizinine geçelim:

$ git clone git://anongit.freedesktop.org/libreoffice/core libreoffice
$ cd libreoffice

Make işleminden önce betik dosyasının hatasız çalıştığını görmeliyiz:

$ ./autogen.sh

Daha sonra uzunca bekleyeceğimiz make komutunu çalıştıralım:

$ make -j[çekirdek sayisi]

Derlemeden sonra writer'ı çalıştırıp Libreoffice5'in çalıştığından emin olalım:

$ instdir/program/soffice --writer

Bir de derleme yaparken karşılaştığım bir hata:
(libkrb5-dev paketini kurduğumda düzelmişti)

configure: error: could not find function 'krb5_sendauth' required for Kerberos 5

Yazarın notu :D
Geliştirme yapmak işteyenler için KDevelop aracı öneriliyor. Bunun için modüllerin kdevelop ile açılabilir olması gerekiyor.
"make kdevelop-ide-integration" komutu ile modüller Kdevelop ile açılabilir hale geliyor.

Yama Yollarken:

Gerrit kod işbirliği aracı olarak kullanılıyor. İlk kez yama yollayanlar için önce buraya kendinizi eklemeniz gerekiyor. Eklerken Lisans kısmı için libreoffice@lists.freedesktop.org a bir mail atmanız gerekiyor.
mail başlığı:
<your name> license statement

içeriği:
"
 All of my past & future contributions to LibreOffice may be
   licensed under the MPLv2/LGPLv3+ dual license.

Gerrit kullanmak için adımlar:

$ ./logerrit setup komutunu çalıştırdıktan sonra oluşan "/home/[username]/.ssh/id_rsa.pub" içerigini gerrit üyeliğimizde ayarlar sekmesinden ssh kısmına eklemeliyiz.
 
$ ./logerrit test komutu sorunsuz çalışıyorsa gerrit aracını kullanabiliriz. 

Daha sonra yeni bir dal oluşturup değişiklik yaptığımız dosyaları ekleyip commit yapacağız.

$ git checkout -b <yeni dal adı>

$ git add dosya (tüm değişiklik yapılan dosyalar için 'git add .')

$ git commit (burada commit mesajı ile bug numarasını ilişkilendirmeliyiz. bunu da commit mesajına "tdf#<bug _id>" ekleyerek yapıyoruz )

Son olarak gerrit'e bu commiti yollayacağız:

$ ./logerrit submit master

Gerrit sayfasından da commitinizi görebilirsiniz :)

Kolay gelsin.

4 yorum:

  1. Merhaba Aybüke,

    Bu güzel yazıya karşılaştığım bir sorunu eklemek istedim. Ben de Ubuntu 15.04 kullanıyorum. Dil tercihi Türkçe olanların derleme devam ederken aldığı, sanıyorum dizin isimlerinin uymamasından kaynaklanan bir sorun. Sorunun çözümü içinse dili İngilizceye çevirdikten sonra /etc/default/locale çıktısının da aşağıdaki gibi olduğu konrol edilip makinenin yeniden başlatılması yeterli olacaktır.

    /etc/default/locale

    LANG="en_US.UTF-8"
    LANGUAGE="en"
    LC_NUMERIC="en_US.UTF-8"
    LC_TIME="en_US.UTF-8"
    LC_MONETARY="en_US.UTF-8"
    LC_PAPER="en_US.UTF-8"
    LC_IDENTIFICATION="en_US.UTF-8"
    LC_NAME="en_US.UTF-8"
    LC_ADDRESS="en_US.UTF-8"
    LC_TELEPHONE="en_US.UTF-8"
    LC_MEASUREMENT="en_US.UTF-8"

    YanıtlaSil
  2. Sedat arkadaşıma çok teşekkür ederim :D

    YanıtlaSil
  3. Sedat'ın eklemesinin daha kısa bir yolu da varmış:

    LC_ALL="en_US.UTF-8" diyebiliriz. Bir de makineyi yeniden başlatmadan, sadece yeni konsol ekranı ile ayarlar gerçekleşmiş oluyor.

    Ayrıca derlerken bu ayarlama yapılsın dersek de:
    LC_ALL="en_US.UTF-8" make -j 8 diyebiliriz.

    YanıtlaSil
    Yanıtlar
    1. Süpermiş, bilgi için teşekkürler :)

      Sil