Finch and console ui

Bill Fassler bill.fassler at yahoo.com
Thu Sep 6 09:46:49 EDT 2007


As always I appreciate your input Josh.  I also think there are things horribly broken in the pidgin/finch automake, autoconf, and libtool environment especially with regards to static builds.  I am a decent software engineer, but I am so new to open source and linux that I am floundering a little and I don't understand the recursive automagic smoke and mirrors.  I was hoping for a little more help from the core developers, but they seem to have their hands full and are not overly concerned with my "off the beaten path" endeavors.

I have decided to fall back and punt and see if things go better if I build dynamically linked versions. Maybe I'll learn something in the process, but even it works it would be unacceptable because libraries such as gettext, glib, and xml2 are way too huge to include in an embedded product just so one application can use  "parts" of them.

I simply must figure out how to build a static finch with a small footprint.... (or switch to a different IM appliation altogether)

Regards,
Bill

Joshua Blanton <jblanton at masaka.cs.ohiou.edu> wrote: Bill Fassler wrote:
> Although I am attempting to build ELF flat static, I am still
> having success up until panel symbols.  According to my config.log
> the autoconf utilities find glib, and then they cannot find the
> wide versions of ncurses or panel, but then they fall back on the
> narrow versions (as the script infers that they should).

Yeah, the fallback should work.  At least, I've heard people report
that it does - I've never tried to build against ncurses/panel, and
certainly not statically.

> **************************************
> But does find panel
> *************************************
> configure:28170: checking for update_panels in -lpanel
> configure:28205: bfin-uclinux-gcc -o conftest -D__linux__ -DNOMMU -I/home/vocal/project/blackfin-svn-branch/elf_flat/uClinux-dist/staging/usr/include -D__lin
> ux__ -DNOMMU -I/home/vocal/project/blackfin-svn-branch/elf_flat/uClinux-dist/staging/usr/include -lpthread -L/home/vocal/project/blackfin-svn-branch/elf_flat
> /uClinux-dist/staging/usr/lib conftest.c -lpanel  -lnsl -lresolv  >&5
> /home/vocal/project/blackfin-svn-branch/elf_flat/uClinux-dist/staging/usr/lib/libpanel.a(p_update.o): In function `_update_panels':
> ****************************************
> But fails here... I am not positive that this is the last hurdle
> to a console, but I hope so.  I just don't understand this one yet.
> Since I am building ELF flat static, I wonder it the pidgin/finch
> link commands are in the right order for dependencies.  I would venture
> to guess that static builds of Finch are not often (if ever) tested.
> In any event I solicit anyones opinion here..
> ****************************************************************
> ../../panel/p_update.c:(.text+0x8): undefined reference to `__nc_panelhook'
> ../../panel/p_update.c:(.text+0x8c): undefined reference to `_is_linetouched'
> ../../panel/p_update.c:(.text+0xf0): undefined reference to `__nc_panelhook'
> ../../panel/p_update.c:(.text+0x102): undefined reference to `_wnoutrefresh'
> collect2: ld returned 1 exit status
> configure:28211: $? = 1
> configure: failed program was:
> 
> Any ideas?  Is it possible that the order of dependent libraries
> are not correct since almost everybody uses shared?

nm on my machine says that those functions are exported by
libncurses.a, so the test compile should probably use -lncurses as
well; I'm not sure why it doesn't.  Perhaps because, when building
with dynamic libraries, libpanel/libpanelw list dependencies on
libncurses/libncursesw?  I don't remember exactly how much
dependency resolution gcc will do for you in that case...  From the
compile line, though, I'd infer "enough" ;-)

I assume, though I don't know for sure, that autoconf provides the
test for panel/ncurses.  If that's the case, their script is
busted.  If it's included with pidgin, that script should be fixed.

--jtb


       
---------------------------------
Sick sense of humor? Visit Yahoo! TV's Comedy with an Edge to see what's on, when. 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pidgin.im/pipermail/devel/attachments/20070906/b8a48df0/attachment.html>


More information about the Devel mailing list