First of all, thanks for all the help and suggestions. Little by  
little I am undestanding more of the whole building process.

Now for the results :)

Using JF's test, I don't see any errors, ie nm doesn't print any  
symbol names. (BTW, could that script be useful in the validation code  
of fink?)  Using oTool -L on all the libs, I now see, with Dan's patch  
that much more libs are linked. But not for libajax and libnucleus:

libajax.5.0.0.dylib:
        /sw/lib/EMBOSS/libajax.5.dylib (compatibility version 6.0.0, current  
version 6.0.0)
        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current  
version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current  
version 111.0.0)

libnucleus.5.0.0.dylib:
        /sw/lib/EMBOSS/libnucleus.5.dylib (compatibility version 6.0.0,  
current version 6.0.0)
        /sw/lib/EMBOSS/libajax.5.dylib (compatibility version 6.0.0, current  
version 6.0.0)
        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current  
version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current  
version 111.0.0)

Not sure if that is a problem.


Unfortunately, I still get the same error:

t/1....Can't load '/sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio- 
Emboss-5.0.0.1/blib/arch/auto/Bio/Emboss/Emboss.bundle' for module  
Bio::Emboss: dlopen(/sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio- 
Emboss-5.0.0.1/blib/arch/auto/Bio/Emboss/Emboss.bundle, 1): Symbol not  
found: _XS_Bio__Emboss_ajStrTokenCount
   Referenced from: /sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio- 
Emboss-5.0.0.1/blib/arch/auto/Bio/Emboss/Emboss.bundle
   Expected in: dynamic lookup

This is with the line

BEGIN { delete $ENV{PERL_DL_NONLAZY}; };

NOT commented out (the code as is). And based on Peter's comment, that  
means that there is still something missing:

> Yes, this makes it pass RTLD_NOW to dlopen() which is similar to  
> setting
> DYLD_BIND_AT_LAUNCH. It should work with this set, if it does not it
> means there is a missing lib or symbol when linking the loadable  
> bundle.

Actually, if I *do* comment out that line, the error changes to:

t/1....Can't load '/sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio- 
Emboss-5.0.0.1/blib/arch/auto/Bio/Emboss/Emboss.bundle' for module  
Bio::Emboss: dlopen(/sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio- 
Emboss-5.0.0.1/blib/arch/auto/Bio/Emboss/Emboss.bundle, 2): Symbol not  
found: _XS_Bio__Emboss_ajStrTokenCount
   Referenced from: /sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio- 
Emboss-5.0.0.1/blib/arch/auto/Bio/Emboss/Emboss.bundle
   Expected in: dynamic lookup
  at t/1.t line 11

Note the 2) instead of the 1)


So then I thought, maybe there are symbols or libs missing in  
Emboss.bundle? oTool -L on that file shows:

/sw/src/fink.build/bio-emboss-pm588-5.0.0.1-1/Bio-Emboss-5.0.0.1/blib/ 
arch/auto/Bio/Emboss/Emboss.bundle:
        /sw/lib/EMBOSS/libnucleus.5.dylib (compatibility version 6.0.0,  
current version 6.0.0)
        /sw/lib/EMBOSS/libajax.5.dylib (compatibility version 6.0.0, current  
version 6.0.0)
        /sw/lib/EMBOSS/libajaxg.5.dylib (compatibility version 6.0.0, current  
version 6.0.0)
        /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current  
version 1.0.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current  
version 111.0.0)

That seems ok to me, since ajStrTokenCount is part of libajax.

Of course, disabling testing solves the building error, but not the  
errors above.



cheers,

- Koen (still struggling)


-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell.  From the desktop to the data center, Linux is going
mainstream.  Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel

Reply via email to