This script is my opensource project, just if you share all or modified part of my script, you HAVETO give link to our web page "posting.php?mode=post&f=6" I tested in Kubuntu 13.04
- script i kullanmanın sorumluluğu size aittir
- Scripti daha önce hiç kurulmamış freepascal ve lazarus varsa çalıştırın. yani sadece ilk kurulum için kullanın. yoksa ayarlarınız değişebilir.
- Script SVN yani subversion kurulum yapar, snapshot (günlük) yayınlanan düzeltme ekleme vs yapılmış kararlı olmayan sürümdür. Sadece kaynak kodlar indirilip, tümü derlenmek zorundadır.
- Script kullanıcı adı ile çalıştırılır, sudo işlemleri yapacağı için şifre gereklidir.
/opt/freepascal/2.7.1/
/opt/lazarus/
- şeklinde klasör açar ve bunların altına kurulum yapar.Klasör lere script içinde belirtilen grub owner olarak atanır, ileride klasörlere yazma yetki sıkıntısı olmaması için böyle yaptım.
- İlk kurulum için derlenmiş bir compiler gerekir, bunun için kararlı sürüm olarak fp2.6.2 (freepascal) kullandım.Script önce bunları indirip kurar.
- FreePascal olarak şuan son sürüm adayı olan 2.7.1 source larını ve lazarus 1.1 in SVN source larını indirir
- fpc 2.6.2 ile, indirilmiş fp ve lazarus source larını builde eder. gerekli sistem linklerini oluşturur ve masa üstüne bir kısa yol oluşturur.
- kurduğu fp 2.6.2 source ve compiler ını siler. sisytemde fp 2.7.1 ve lazarus 1.1 son sürümü kurulmuş olur
- Dikkat bu indirme ve özellikle buil işlemi uzun sürer. benim sistemim ssd raid 0 ve i7 buna rağmen 3-4 dk sürüyor. normal bir sistemde sanırım 10dk yada daha uzun sürebilir.
[2013-07-01]
- Benim gibi kullanıcı adı ve grup adını aynı kullanmama ihtimaline karşılık, kullanıcı adı ekledim.(ben genelde kullanıcı grup adlarının başına "g" ekliyorum)
Kod: Tümünü seç
#!/bin/sh
#http://sourceforge.net/projects/lazarus/files/
p_fpc='./stable/fpc_2.6.2-0_amd64.deb'
p_fpsrc='./stable/fpc-src_2.6.2-0_amd64.deb'
Group_Name='delphiturkiye' # <-- don't forget change this name to your user's group name. Accually username and group name is same
User_Name='delphiturkiye'
set -e
clear
echo "********************************************************"
echo "* Automated installation v1.3 *"
echo "* for install Lazarus(SVN)/FPC(2.7.1) *"
echo "* *"
echo "* http://www.delphiturkiye.com *"
echo "* http://www.delphiturkiye.com/forum/viewforum.php?f=6 *"
echo "* *"
echo "* http://www.lazarus.freepascal.org/ *"
echo "* *"
echo "* See the source of inspiration for this script: *"
echo "* http://wiki.lazarus.freepascal.org/Lazarus_Manager *"
echo "* *"
echo "********************************************************"
echo ""
echo "WARNING: The installation will take a while, please wait!"
echo "Creating folder under /opt"
sudo chgrp sudo /opt/
sudo chmod g=wxr /opt/
if test -d "/opt/freepascal/"
then echo "/opt/freepascal/ mevcut"
else sudo mkdir /opt/freepascal/
fi
sudo chown $User_Name /opt/freepascal/
sudo chgrp $Group_Name /opt/freepascal/
sudo chmod ug=wxr /opt/freepascal/
if test -d "/opt/freepascal/2.7.1/"
then echo "/opt/freepascal/2.7.1/ mevcut"
else sudo mkdir /opt/freepascal/2.7.1/
fi
sudo chown $User_Name /opt/freepascal/2.7.1
sudo chmod ug=wxr /opt/freepascal/2.7.1/
if test -d "/opt/lazarus/"
then echo "/opt/lazarus/ mevcut"
else sudo mkdir /opt/lazarus/
fi
sudo chown $User_Name /opt/lazarus/
sudo chmod ug=wxr /opt/lazarus/
echo " Delete old folders, files, installed freepascal packages..."
sleep 2
sudo apt-get remove -y fpc fp-utils fpc-source fp-units-misc fp-*
sudo rm -Rf /usr/lib/fpc/2.6.2
sudo rm -Rf /usr/share/doc/fpc-2.7.1
sudo rm -Rf /usr/share/fpcsrc
sudo rm -Rf /usr/lib/fpc
sudo rm -Rf /etc/fpc.cfg
sudo rm -Rf /etc/fpc.cfg.bak
sudo rm -Rf /etc/fppkg.bak
sudo rm -Rf /etc/fppkg.cfg
sudo rm -Rf /etc/fppkg
echo ""
echo "Step 1: Installing dependencies..."
echo ""
sleep 2
#just check subversion fpc downloaded new stable version from
#sudo apt-get install --force-yes -y subversion #fpc fp-utils fpc-source fp-units-misc
echo ""
sudo dpkg -i "$p_fpc"
echo ""
sudo dpkg -i "$p_fpsrc"
echo ""
echo "Step 2: Downloading files..."
echo "Downloading svn freepascal trunk"
sleep 2
svn co http://svn.freepascal.org/svn/fpc/trunk /opt/freepascal/2.7.1
echo "Downloading svn lazarus trunk"
sleep 2
svn co http://svn.freepascal.org/svn/lazarus/trunk /opt/lazarus
cd /opt/freepascal/2.7.1/
sleep 2
echo "Downloading snapshot freepascal 2.7.1.x86_64-linux.tar.gz source"
wget -c ftp://ftp.freepascal.org/fpc/snapshot/v27/x86_64-linux/fpc-2.7.1.x86_64-linux.tar.gz
echo ""
echo "Step 3: Unzipping FPC..."
echo ""
sleep 2
tar -vzxf fpc-2.7.1.x86_64-linux.tar.gz
echo ""
echo "Step 4: Updating FPC SVN..."
echo "Check svn version last"
sleep 2
svn update /opt/freepascal/2.7.1/
echo ""
echo "Step 5: Compiling new FPC..."
echo ""
sleep 2
make clean all install INSTALL_PREFIX=/opt/freepascal/2.7.1
echo ""
echo "Step 6: Removing old FPC..."
echo ""
sleep 2
sudo cp -r /usr/lib/fpc/2.6.2 /opt/freepascal/2.7.1/lib/fpc/2.6.2/
sudo apt-get remove -y fpc fp-utils fpc-source fp-units-misc fp-*
sudo rm -f /etc/fpc.cfg
echo ""
echo "Step 7: Installing new FPC..."
echo ""
sleep 2
sudo rm -Rf /usr/lib/fpc/2.6.2
sudo rm -Rf /usr/share/doc/fpc-2.7.1
sudo ln -sf /opt/freepascal/2.7.1/share/doc/fpc-2.7.1 /usr/share/doc/fpc-2.7.1
sudo rm -Rf /usr/share/fpcsrc
sudo ln -sf /opt/freepascal/ /usr/share/fpcsrc
sudo rm -Rf /usr/lib/fpc
sudo ln -sf /opt/freepascal/2.7.1/lib/fpc /usr/lib
sudo ln -sf /opt/freepascal/2.7.1/lib/fpc/2.7.1/ppcx64 /usr/bin/ppcx64
sudo ln -sf /opt/freepascal/2.7.1/bin/bin2obj /opt/freepascal/2.7.1/bin/chmcmd /opt/freepascal/2.7.1/bin/chmls /opt/freepascal/2.7.1/bin/data2inc /opt/freepascal/2.7.1/bin/delp /opt/freepascal/2.7.1/bin/fd2pascal /opt/freepascal/2.7.1/bin/fp /opt/freepascal/2.7.1/bin/fpc /opt/freepascal/2.7.1/bin/fpclasschart /opt/freepascal/2.7.1/bin/fpcmake /opt/freepascal/2.7.1/bin/fpcmkcfg /opt/freepascal/2.7.1/bin/fpcres /opt/freepascal/2.7.1/bin/fpcsubst /opt/freepascal/2.7.1/bin/fpdoc /opt/freepascal/2.7.1/bin/fppkg /opt/freepascal/2.7.1/bin/fprcp /opt/freepascal/2.7.1/bin/grab_vcsa /opt/freepascal/2.7.1/bin/h2pas /opt/freepascal/2.7.1/bin/h2paspp /opt/freepascal/2.7.1/bin/instantfpc /opt/freepascal/2.7.1/bin/makeskel /opt/freepascal/2.7.1/bin/mkarmins /opt/freepascal/2.7.1/bin/mkx86ins /opt/freepascal/2.7.1/bin/plex /opt/freepascal/2.7.1/bin/postw32 /opt/freepascal/2.7.1/bin/ppdep /opt/freepascal/2.7.1/bin/ppudump /opt/freepascal/2.7.1/bin/ppufiles /opt/freepascal/2.7.1/bin/ppumove /opt/freepascal/2.7.1/bin/ptop /opt/freepascal/2.7.1/bin/pyacc /opt/freepascal/2.7.1/bin/rmcvsdir /opt/freepascal/2.7.1/bin/rstconv /opt/freepascal/2.7.1/bin/unitdiff /bin
sudo /usr/lib/fpc/2.7.1/samplecfg /usr/lib/fpc/2.7.1/ /etc
echo ""
echo "Step 8: Updatting Lazarus SVN..."
echo ""
sleep 2
cd /opt/lazarus
svn update /opt/lazarus/
echo ""
echo "Step 9: Compiling Lazarus..."
echo ""
sleep 2
#make clean all OPT='-glw2'
make clean all bigide
echo ""
echo "Step 10: Creating links and menu item of Lazarus..."
echo ""
sleep 2
sudo ln -sf /opt/lazarus/startlazarus /bin
sudo ln -sf /opt/lazarus/lazarus /bin
echo "[Desktop Entry]
Encoding=UTF-8
Categories=Application;IDE;Development;GTK;GUIDesigner;
Type=Application
Terminal=false
Exec=startlazarus %f
Name=Lazarus
Comment=Lazarus IDE
MimeType=text/x-pascal;text/lazarus-project-source;text/lazarus-project-information;text/lazarus-form;text/lazarus-resource;text/lazarus-package;text/lazarus-package-link;text/lazarus-code-inlay;
Patterns=*.pas;*.pp;*.p;*.inc;*.lpi;*.lpk;*.lpr;*.lfm;*.lrs;*.lpl;*.dci
Icon=/opt/lazarus/images/mimetypes/text-lazarus-project-information.png" > /tmp/lazarus-svn.desktop
sudo mv /tmp/lazarus-svn.desktop /usr/share/applications/
echo "***********************************************"
echo "* The automated installation *"
echo "* is *"
echo "* finished! :) *"
echo "* *"
echo "* Open Lazarus in menu of your system. *"
echo "* *"
echo "* Please, now follow see this thread: *"
echo "***********************************************"
echo ""
echo "Enjoy!"