seank has asked for the wisdom of the Perl Monks concerning the following question:
XSInit.c# The Perl documentation advises to obtain compiler and linker options + from using the commands # "perl -MExtUtils::Embed -e ccopts" and "perl -MExtUtils::Embed -e ld +opts" respectively. Of the # resulting output, it seemed meaningful to use the linker options # # Wl,-E -Wl,-rpath,/usr/lib/perl5/lib/5.8.8/x86_64-linux/CORE # # This may need to be revised as our understanding of using Perl in th +is way develops. # always: -rm -f $(TARGET_SO) $(JAVAH) -d . -classpath ../build com.dajeil.dais.webui.toolki +t.DaisCliUtil $(CC) $(CFLAGS) -c -shared -fpic -pthread -D _REENTRANT $(INCL +UDES) $(SOURCES) XSInit.c $(LD) -r XSInit.o /usr/lib/perl5/5.10.0/i686-linux/auto/DynaL +oader/DynaLoader.a -o XSInit_r.o $(CC) -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.10.0/i686-linux/CORE +-shared -fpic -pthread -D _REENTRANT $(LIBS) $(OBJECTS) XSInit_r.o -o + $(TARGET_SO) cp $(TARGET_SO) ../dist
#include <jni.h> #include <EXTERN.h> #include <perl.h> #include <dlfcn.h> /* The following code was optained by running the command "perl -MExt +Utils::Embed -e xsinit -- -o perlxsi.c" and pasting the result into this file. */ EXTERN_C void boot_DynaLoader(pTHX_ CV* cv); EXTERN_C void XSInit(pTHX) { char *file = __FILE__; dXSUB_SYS; /* DynaLoader is a special case */ newXS("DynaLoader::boot_DynaLoader", boot_DynaLoader, file); }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: perl-5.10.0: Where is DynaLoader.a?
by almut (Canon) on Jul 25, 2008 at 12:41 UTC | |
|
Re: perl-5.10.0: Where is DynaLoader.a?
by moritz (Cardinal) on Jul 25, 2008 at 12:05 UTC | |
by syphilis (Archbishop) on Jul 25, 2008 at 12:48 UTC | |
by seank (Acolyte) on Jul 25, 2008 at 12:25 UTC | |
|
Re: perl-5.10.0: Where is DynaLoader.a?
by Anonymous Monk on Jul 25, 2008 at 12:16 UTC | |
by seank (Acolyte) on Jul 25, 2008 at 12:36 UTC | |
by shmem (Chancellor) on Jul 25, 2008 at 13:07 UTC | |
by seank (Acolyte) on Jul 25, 2008 at 15:22 UTC | |
by Anonymous Monk on Jul 25, 2008 at 12:42 UTC |