in reply to P5NCI + void load_function-signature

After fixing the signature to iv, the code you posted works for me. Do you not have the symbol XS_P5NCI_nci_iv defined in your P5NCI.so? If so, I wonder if the generated XS file is incomplete.

Replies are listed 'Best First'.
Re^2: P5NCI + void load_function-signature
by nostromo (Sexton) on Jun 22, 2006 at 19:20 UTC
    indeed a strings P5NCI.so | grep XS_P5NCI_nci_iv shows no hit. hm... the problem might be, that my P5NCI-module was not built via "perl ./Build", but rather by converting a prebuilt package to my needs. today in the morning (localtime, so about 12 hours ago) i tried to compile from tarball. but the build process failed after about an hour :(
    ok, so it seems my module seems broken. a fact i can live with.
    thanks a lot, chromatic for helping me on this one!
    br, nos

      You do need a fair amount of memory to compile the generated XS file. I could probably chunk it into separate files, so as not to choke compilers and machines without spare cycles.

      If you don't have the right signature, you do need to rebuild it though. (If you want to do that and don't need too much complexity, change my $max_len       = 5; on line 72 of build_lib/P5NCI/GenerateXS.pm. Reducing that to 4 should make a much smaller, if less capable, XS file.)

        YES! both hints did it :)
        cool, it works!
        thank you so much, chromatics!

        How much incidentally? I do lots of stuff on a laptop that only has 32MB of ram.

        ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

        Maybe you could use Inline::C to compile what you need on-demand?

        -sam