in reply to use Inline CPP to call function in so file not working

Is there something wrong with my Perl (v5.8.0)

Yes, many many things detailed in the various perldeltas

or did I miss anything?

Yes you did. When you say -lsay_hi this means look for libsay_hi.a which maybe links to libsay_hi.so , or maybe is a static library

You're missing libsay_hi.a

Another tip is use

use Cwd(); use Inline C => Config => BUILD_NOISY => 1, CLEAN_AFTER_BUILD => 0; use Inline CPP => <<'END', NAME => 'doodle', INC => "-I.", LIBS => "-l +say_hi"; #include "say_hi.h" void test(){ return say_hi(); } END test(); __END__
and then examine doodle directory to work out whats what .