Neil,
Thanks for the reply. I was beginning to wonder if there was anyone on this list.
Did what you suggested, and built my own libarm.dll using cygwin. That didn't seem to
work. Searched cygwin list for dl issues - found reference to cygcheck utility that
will load a library, and attempt to load dependencies. Seems that libarm.dll could not
be found. The only copy I had was in /arm_sdk/lib/winnt_95 (or similar), which was not
in my path. Copied it to c:\winnt\system32, and all is well!
I was thinking that Inline's Config => LIBS parm would handle this at run-time, but I
was mistaken.
Next I will try to link to native Windows dll, libarm32.dll - should not be a problem,
since I've tested already linking to function in user32.dll
Does bring up one thing I'm having trouble with - ARM library name is different on
Windows - adds '32' to end of basename. I'm trying to write some simple code in my
arm.pm to change the value of the LIBS parm, but I'm having variable scoping issues.
Here's what I'm doing:
use strict;
<snip>
BEGIN {
our ($VERSION, $libarm_ext);
$VERSION = '0.04';
if ($^O eq 'MSWin32')
{$libarm_ext '32'}
else
{$libarm_ext = ''};
}
use Inline C => Config =>
CCFLAGS => '-D_PROTOTYPES',
LIBS => '-L/arm_sdk/lib/null -larm'.$libarm_ext,
INC => '-I/arm_sdk/include',
PREFIX => 'my_'
;
use Inline C => 'DATA';
<snip>
This is working. The errors are all related to how I'm use the variable $libarm_ext,
with strict. I'm sure it's obvious to people more experienced with Perl than me.
Thanks again for replying.
-David
[EMAIL PROTECTED]