Page 1 of 13 12311 ... LastLast
Results 1 to 10 of 123

Thread: HowTo: Compile Pidgin From Source

  1. #1
    Join Date
    Apr 2007
    Beans
    28

    HowTo: Compile Pidgin From Source

    I've trolled these forums for awhile now, enjoying the plethora of information and experienced users, but being that this is my first post / tutorial, please bear with me ;]. Because the repos have yet to be updated with the latest version of Pidgin and the release seems to fix some memory leaks that have plagued the little bird for awhile now, I figured a concise set of instructions on how to do this would be appropriate. I've noticed a few people compiling new versions but while unknowingly keeping the old libpurple, which may or may not be a good thing, and this tutorial will make use of the most up-to-date version.

    Note: I realize that I simply could've posted a deb for most of this, but compiling from source is a handy skill that many have yet to learn or feel comfortable with. It allows one to liberate themselves of practices such as "deb begging" or adding a new (possibly insecure) repo to download one app. This guide is also fairly Gutsy specific, but should be easily modified to just about any other release.

    Other handy information regarding compiling Pidgin can be found here.

    Current Version: 2.4.1 [ChangeLog / Download]

    1) Remove old Pidgin et. al.

    Open a terminal and type / copy-and-paste the following:
    Code:
    sudo aptitude purge pidgin pidgin-data libpurple0
    Do not fear, as this will not remove your pidgin settings, logs, accounts, aways, etc.

    2) Prepare to compile Pidgin

    Click on the main menu and select "System->Administration->Software Sources". Make sure the box next to "Source code" is checked.

    Open a terminal and type / copy-and-paste the following:
    Code:
    sudo aptitude update && sudo aptitude install build-essential checkinstall
    This will install the necessary tools to compile anything, if you haven't already done so.

    Open a terminal and type / copy-and-paste the following:
    Code:
    sudo apt-get build-dep pidgin
    Allow it to download and install the plethora of packages that are required to compile Pidgin.

    3) Download and compile Pidgin

    The pidgin source can be found at pidgin.im or directly by clicking here.
    Extract the archive either by right-clicking on it and clicking "extract here" or by running the following command in terminal:
    Code:
    tar -jxvf pidgin-2.4.1.tar.bz2
    Get into your newly created directory:
    Code:
    cd pidgin-2.4.1/
    Get compiling! Retrieve a beer and/or cup of tea as, depending on the speed of your computer, the 'make' command may take some time.
    Code:
    ./configure --prefix=/usr --enable-gnutls=yes
    make
    sudo checkinstall
    (For those interested, the '--enable-gnutls=yes' is required for Google Talk and MSN support.)

    Enjoy watching the waterfall of text for a bit. When presented with a series of questions after running 'sudo checkinstall' simply press enter to accept the defaults.

    *Important Note* Sometimes, for reasons I don't fully understand, checkinstall will seemingly stop doing its business at "Installing Debian Package." In the event that this happens, simply press enter to accept whatever dialog is appearing and checkinstall is hiding from you. I believe it's asking if you want to overwrite an old file leftover from the old install (and therefore answering yes is the way to go), but can anyone confirm this?

    After more text floods the screen, you should have Pidgin compiled and installed. Try running it by typing 'pidgin'.

    4) Other Notes
    If when trying to run Pidgin, you receive the error:
    Code:
    pidgin: error while loading shared libraries: libpurple.so.0: cannot open shared object file: No such file or directory
    Try running these two commands in terminal:
    Code:
    sudo ln -s /usr/local/lib/libpurple.so /usr/lib/
    sudo ln -s /usr/local/lib/libpurple.so.0 /usr/lib/
    The error is caused by Pidgin looking for its libraries in the wrong place (likely due to the omission of '--prefix=/usr' from configure). The previous two commands link where it thinks they are to where they actually are. You should now be able to run Pidgin successfully!

    You can run a
    Code:
    sudo rm -rf pidgin-2.4.1/
    to get rid of your source directory but make SURE you're removing the directory and not anything else as a 'rm -rf' can be a nasty one if used carelessly.

    Also, because of an inconsistency in version naming, update-manager or your other package managers may attempt to "upgrade" you back down to the old version that's in the repos, thinking that it's newer. To get this to stop happening, open Synaptic and search for pidgin, pidgin-data, and libpurple0 (you'll have to do this one by one as it resets your search after each). After searching for each, highlight it and click on 'Package->Lock Version' up top. This will keep update-manager from touching it and constantly suggesting an update.

    The following command will remove Pidgin at anytime (since you were smart and used 'checkinstall'):
    Code:
    sudo aptitude remove pidgin
    Enjoy having fewer memory leaks and be sure to post any suggestions / questions \m/ ;]

    ChangeLog
    11/21/07 - added '--prefix=/usr' option to the ./configure command (suggested by ImpressMe)
    11/28/07 - Updated to reflect the release of 2.3.0 (thanks to goldencako for testing) and added a link to the Pidgin tutorial provided by the Ubuntu Documentation Project (thanks to Rippie). Also added the '--enable-gnutls=yes' ./configure option to enable support for MSN and Google Talk.
    12/8/07 - Fixed a small typo (thanks to Chonnawonga!) and updated the guide to reflect the release of 2.3.1.
    12/28/07 - Made the "important note" more obvious ~
    3/3/08 - Updated to reflect the release of 2.4.0 (thanks to mafsi for testing).
    4/3/08 - Updated to reflect the release of 2.4.1 and added the "Software Sources" step (thanks to h2z!).
    Last edited by trusatori; April 4th, 2008 at 04:51 AM.

  2. #2
    Join Date
    Nov 2007
    Beans
    69
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    Question:

    Code:
     
    sudo ln -s /usr/local/lib/libpurple.so /usr/lib/
    sudo ln -s /usr/local/lib/libpurple.so.0 /usr/lib/
    Will these links survive the uninstall and be a problem, if I install Pidgin from the official repositories later?
    Desktop Linux: No hay banda!

  3. #3
    Join Date
    Nov 2007
    Beans
    69
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Red face Re: HowTo: Compile Pidgin 2.2.2 From Source

    How do I uninstall all of the files installed by:

    sudo apt-get build-dep pidgin
    Last edited by ImpressMe; November 16th, 2007 at 12:25 AM.
    Desktop Linux: No hay banda!

  4. #4
    Join Date
    Apr 2007
    Beans
    28

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    Quote Originally Posted by ImpressMe View Post
    Question:

    Code:
     
    sudo ln -s /usr/local/lib/libpurple.so /usr/lib/
    sudo ln -s /usr/local/lib/libpurple.so.0 /usr/lib/
    Will these links survive the uninstall and be a problem, if I install Pidgin from the official repositories later?
    The links will likely survive the package being uninstalled.

    Although I'm not 100% certain, when installing a future release of Pidgin from the repos, apt is likely going to ask if you want to overwrite them or it may just do it automatically since they're only links. In any event, if you decide to uninstall this version, the symlinks can simply and safely be rm'd from /usr/lib/ before installing the new version or if an error results during install.

    Keeping the build dependencies is not going to hurt anything (except maybe use up a bit of disk space) and they'll be needed again anyway in the event that you compile another version of Pidgin. However, if you really want the build dependencies gone, 'gtkorphan' is your friend.
    Code:
    sudo aptitude install gtkorphan
    It will allow you to find and remove all orphaned packages. To my knowledge, that's the only way to accomplish what you asked, as apt doesn't seem to have this functionality built-in.

  5. #5
    Join Date
    Nov 2007
    Beans
    69
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    Thx
    Desktop Linux: No hay banda!

  6. #6
    Join Date
    Jan 2007
    Beans
    3

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    Excellent! Your instructions worked perfectly!
    I'm recently installed Gusty and wanted to upgrade into Pidgin 2.2.2 because that version supports MSNP14 which includes displaying status messages that are displayed with the each buddy in MSN. However the status messages are not displayed in Pidgin and in fact the MSNP14 protocol was already implemented in version 2.2.1.
    Has anyone here been able to see status messages of MSN buddies in Pidgin, and if so does it require some configuration?

  7. #7

    Smile Re: HowTo: Compile Pidgin 2.2.2 From Source

    config option is
    configure --prefix=/usr

    No Need Symlink link

  8. #8
    Join Date
    Nov 2007
    Beans
    69
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    Quote Originally Posted by Elmeromero View Post
    Excellent! Your instructions worked perfectly!
    I'm recently installed Gusty and wanted to upgrade into Pidgin 2.2.2 because that version supports MSNP14 which includes displaying status messages that are displayed with the each buddy in MSN. However the status messages are not displayed in Pidgin and in fact the MSNP14 protocol was already implemented in version 2.2.1.
    Has anyone here been able to see status messages of MSN buddies in Pidgin, and if so does it require some configuration?
    Are you sure that it supports MSNP14? I can see comments from Yahoo contacts and what not, but not from MSN. Apparently MSNP14 code was completed a long time ago, but I am not sure that it is integrated into 2.2.1 or 2.2.2.

    It should work out of the box, but lets see what 2.2.3 will bring us. I got tired of reading page long tickets.

    And please upgrade the HOW-TO with config option --prefix=/usr, trusatori.
    Desktop Linux: No hay banda!

  9. #9
    Join Date
    Apr 2007
    Beans
    28

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    Thanks for the input, friends, and the guide has been updated.

    The reason I didn't include it in the original is because I personally prefer to keep my repo installed stuff (/usr/) separate from my compiled stuff (/usr/local/) because I find that occasionally, checkinstall will mess something up and talk about overwriting and removing things I don't want to when I go to remove a package. Due to this, I like to be on the safe side and keep things separate, but I agree that it is a more straight-forward approach, especially to the new user, to have everything in /usr/ ;].

    As for the msn protocol, I'm not an msn user and therefore didn't notice the issue, but I'll look into it and see if I can be of any help.

  10. #10
    Join Date
    Nov 2007
    Beans
    69
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HowTo: Compile Pidgin 2.2.2 From Source

    I didn't see this msnp14 support in 2.2.1 from this official Ubuntu repos neither in the 2.2.2 I found in another repository, so I simple believe that it has not yet found its way into Pidgin.
    Desktop Linux: No hay banda!

Page 1 of 13 12311 ... LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •