2

I downloaded : pidgin 2.10.6 and sipe 1.14.1 from sourceforge.

I install pidgin with the following command in the folder of pidgin (2.10.6):

./configure --prefix=/home/tony/soft/pidgin_sipe --disable-screensaver --disable-gtkspell --disable-vv --disable-meanwhile --disable-avahi --disable-nm --disable-tcl

make
make install

it works fine and i can launch pidgin with /home/tony/soft/pidgin_sipe/bin/pidgin

then i tried to install the plugin sipe but in the folder of sipe (1.14.1) the command:

./configure --prefix=/home/tony/soft/pidgin_sipe

returns :

checking for PURPLE... no 
checking for TELEPATHY_GLIB... no
configure: error: at least one plugin must be selected

If you didn't use a --enable option then please check that you have
the headers for the packages "purple" or "telepathy-glib" installed.

I add in my environment variable PATH the folder /home/tony/soft/pidgin_sipe/bin and i export PURPLE_LIBS="/home/tony/soft/pidgin_sipe/lib" but the result is the same.

And in the folder /home/tony/soft/pidgin_sipe/include/libpurple the headers are here :

account.h conversation.h debug.h .... upnp.h

Am I missing something or how can I tell to sipe where libpurple is.

Gilles 'SO- stop being evil'
  • 807,993
  • 194
  • 1,674
  • 2,175
Tony Morris
  • 21
  • 1
  • 2

2 Answers2

2

Maybe you should install libpurple-dev with apt-get. That should solve this problem.

Kazark
  • 969
  • 3
  • 12
  • 31
liufapeng
  • 21
  • 2
1

You need to tell the compiler/linker where to look for the libraries. The --prefix option only tells the build system where to place the resulting stuff, not where to look for any dependencies.

Usually this can be done either by setting some environment variables or with an option for the configure script (preferred). Check output of configure --help for options like --with-purple=path which allows you to tell the buildsystem where compiler/linker should look for header files/libraries. Sometimes there are two options --with-libXYZ-header= and --with-libXYZ-libs= sometimes there is just one - in the former case you specify the full path to headers/libraries, in the latter just the parent directory (/home/tony/soft/pidgin_sipe in your case).

If the options fail, resort to CFLAGS for C compiler, CXXFLAGS for C++ compiler, CPPFLAGS for the C preprocessor, and LDFLAGS for the linker (ld). In your case adding:

-I/home/tony/soft/pidgin_sipe/include -L/home/tony/soft/pidgin_sipe/lib

to CFLAGS and CXXFLAGS should do the trick (note that you might need to use lib64 instead of lib if you are on 64bit system though).

As a side note, these environment variables are not handled by the compiler itself, rather they are customarily used in Makefiles (and it's usually considered a good practice to use them whenever you write your own build system).

peterph
  • 30,520
  • 2
  • 69
  • 75
  • I made progress. I set some environment variables : `export PURPLE_CFLAGS='-I/home/tony/soft/pidgin_sipe/include/libpurple/` and `export PKG_CONFIG_PATH="/home/tony/soft/pidgin_sipe/lib/pkgconfig/"` but now i struggle with the lib64 as your note mentioned. I can't find the library purple for 64 architecture. I have the following error after the commande `./configure --prefix=/home/tony/soft/pidgin_sipe` : `checking for PURPLE... yes checking for 32- and 64-bit header conflicts... configure: error: in '/home/tony/soft/pidgin_sipe/pidgin-sipe-1.14.1': configure: error: conflicts found.` – Tony Morris Jan 15 '13 at 16:45
  • @TonyMorris Hm... the error should be slightly better describe in `config.log` - it should be possible to look for it by these error messages. It should be towards the end of the file, but not directly at the end (that is where general configuration of the `configure` script that wrote the log). – peterph Jan 15 '13 at 21:21
  • `conftest.c:24:18: error: glib.h: No such file or directory cc1: warnings being treated as errors In file included from conftest.c:25: /home/tony/soft/pidgin_sipe/include/libpurple/cipher.h:79: error: type defaults to 'int' in declaration of 'gchar' /home/tony/soft/pidgin_sipe/include/libpurple/cipher.h:79: error: expected ';', ',' or ')' before '*' token /home/tony/soft/pidgin_sipe/include/libpurple/cipher.h:82: error: expected ';' before 'void'` and i have a lot more on `cipher.h` (about 40) and some more on `conftest.c` – Tony Morris Jan 16 '13 at 08:33
  • @TonyMorris see whether `conftest.c` still exists (that's the file that configure uses to test compilation with various options/libraries) and try to compile it yourself (with the same flags `configure` tried to use), and proceed from there. If it doesn't exist any more, you might need to put something into the `configure` script that would save the contents of the file before it is removed. – peterph Jan 16 '13 at 10:26