dylex / slack-libpurple

Slack module for libpurple
GNU General Public License v2.0
281 stars 41 forks source link

Mac OSX build instructions or resources. #135

Closed ru5t closed 3 years ago

ru5t commented 3 years ago

Hi! Thanks for great product! Is there anyone currently, who managed to build under OSX? There's many questions - environment setup, build process. Trying to build it and facing difficulties:

Compiling

Above solved editing CFLAGS:

-I../adium/Frameworks/libpurple.framework/Versions/2.12.0r11b8084bcff4/Headers \
    -I/usr/local/Cellar/glib/2.68.0/include/glib-2.0 \
    -I/usr/local/Cellar/glib/2.68.0/lib/glib-2.0/include \

Linking

Can't find way to link against libpurple. Tried to provide -L path to library in app contents. Tried -l to file itself. As I see, it is dylib (from objdump -p). And yet I can't get it to link.

Built pidgin's libpurple. It is also dylib. Also can't link against it.

Better way?

EionRobb commented 3 years ago

Are you trying to build it for Pidgin on OSX or for Adium?

ru5t commented 3 years ago

For adium

EionRobb commented 3 years ago

Ah. You'll need to create an Adium plugin that's a wrapper for this libpurple one, as Adium can't load libpurple plugins natively

eg, see https://github.com/tripplet/skypeweb4adium for inspiration

ru5t commented 3 years ago

Ok) so Pidgin then)

Building

Installed it with brew: brew install pidgin Modified CFLAGS:

-I/usr/local/Cellar/pidgin/2.14.1_1/include/libpurple \
    -I/usr/local/Cellar/glib/2.68.0/include/glib-2.0 \
    -I/usr/local/Cellar/glib/2.68.0/lib/glib-2.0/include \

No mods for link process. It compiles and links. I don't really get how does it link though. I didn't provided Makefile with libpurple location.

Installation

Fails :

 make install-user
install -D libslack.so /Users/ru5t/.purple/plugins/libslack.so
install: illegal option -- D
usage: install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
               [-o owner] file1 file2
       install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
               [-o owner] file1 ... fileN directory
       install -d [-v] [-g group] [-m mode] [-o owner] directory ...
make: *** [install-user] Error 64

Installed via manual copy and it seems to work. Cool. Can be closed