use Inline C => Config => LIBS => '-usbi2cio.lib', BUILD_NOISY => 1; use Inline C => << 'END_C'; #include #include "Usbi2cio.h" void greet() { HANDLE h = DAPI_OpenDeviceInstance("UsbI2cIo", 0); printf("Hello, world\n"); } END_C greet; #### validate Stage Starting Build Preprocess Stage get_maps Stage Finished Build Preprocess Stage Starting Build Parse Stage Finished Build Parse Stage Starting Build Glue 1 Stage Finished Build Glue 1 Stage Starting Build Glue 2 Stage Finished Build Glue 2 Stage Starting Build Glue 3 Stage Finished Build Glue 3 Stage Starting Build Compile Stage Starting "perl Makefile.PL" Stage Note (probably harmless): No library found for -usbi2cio.lib Writing Makefile for inline_c_pl_c65f Writing MYMETA.yml and MYMETA.json Finished "perl Makefile.PL" Stage Starting "make" Stage Microsoft (R) Program Maintenance Utility Version 9.00.21022.08 Copyright (C) Microsoft Corporation. All rights reserved. C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils\xsubpp -typemap "C:\Perl\lib\ExtUtils\typemap" i nline_c_pl_c65f.xs > inline_c_pl_c65f.xsc && C:\Perl\bin\perl.exe -MExtUtils::Command -e mv -- inlin e_c_pl_c65f.xsc inline_c_pl_c65f.c cl -c -I"C:/sandbox" -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT - DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D_USE_32BIT_TIME_T -MD -Zi -DNDEBUG -O1 -DVERSION=\"0.00\" -DXS_VERSION=\"0.00\" "-IC:\Perl\li b\CORE" inline_c_pl_c65f.c inline_c_pl_c65f.c Running Mkbootstrap for inline_c_pl_c65f () C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod -- 644 inline_c_pl_c65f.bs C:\Perl\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"inline_c_pl_c65f\", 'D LBASE' => 'inline_c_pl_c65f', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\inline_c_pl_c65f\inline_c_pl_c65f.dll -dll -nologo -nodefaultlib -d ebug -opt:ref,icf -libpath:"C:\Perl\lib\CORE" -machine:x86 inline_c_pl_c65f.obj C:\Perl\lib\CORE \perl516.lib "C:\Program Files\Microsoft Visual Studio 9.0\VC\LIB\oldnames.lib" "C:\Program Files\Mi crosoft SDKs\Windows\v6.0A\lib\kernel32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\user 32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\gdi32.lib" "C:\Program Files\Microsoft SD Ks\Windows\v6.0A\lib\winspool.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\comdlg32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\advapi32.lib" "C:\Program Files\Microsoft SDKs\Wi ndows\v6.0A\lib\shell32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\ole32.lib" "C:\Progr am Files\Microsoft SDKs\Windows\v6.0A\lib\oleaut32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6. 0A\lib\netapi32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\uuid.lib" "C:\Program Files\ Microsoft SDKs\Windows\v6.0A\lib\ws2_32.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\mpr. lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\winmm.lib" "C:\Program Files\Microsoft SDKs\ Windows\v6.0A\lib\version.lib" "C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib\odbc32.lib" "C:\Pr ogram Files\Microsoft SDKs\Windows\v6.0A\lib\odbccp32.lib" "C:\Program Files\Microsoft SDKs\Windows\ v6.0A\lib\comctl32.lib" "C:\Program Files\Microsoft Visual Studio 9.0\VC\LIB\msvcrt.lib" -def:inline _c_pl_c65f.def Creating library blib\arch\auto\inline_c_pl_c65f\inline_c_pl_c65f.lib and object blib\arch\auto\i nline_c_pl_c65f\inline_c_pl_c65f.exp inline_c_pl_c65f.obj : error LNK2019: unresolved external symbol _DAPI_OpenDeviceInstance@8 referenc ed in function _greet blib\arch\auto\inline_c_pl_c65f\inline_c_pl_c65f.dll : fatal error LNK1120: 1 unresolved externals NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\link.EXE"' : return code '0x460' Stop. A problem was encountered while attempting to compile and install your Inline C code. The command that failed was: C:\PROGRA~1\MICROS~1.0\VC\BIN\nmake.exe The build directory was: C:\sandbox\_Inline\build\inline_c_pl_c65f To debug the problem, cd to the build directory, and inspect the output files. at C:\sandbox\inline_c.pl line 4. ...propagated at C:/Perl/site/lib/Inline/C.pm line 772. BEGIN failed--compilation aborted at C:\sandbox\inline_c.pl line 14. #### Summary of my perl5 (revision 5 version 16 subversion 3) configuration: Platform: osname=MSWin32, osvers=5.2, archname=MSWin32-x86-multi-thread uname='' config_args='undef' hint=recommended, useposix=true, d_sigaction=undef useithreads=define, usemultiplicity=define useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=undef, use64bitall=undef, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cl', ccflags ='-nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TE XTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D_USE_3 2BIT_TIME_T', optimize='-MD -Zi -DNDEBUG -O1', cppflags='-DWIN32' ccversion='15.0.21022', gccversion='', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:\Perl\lib\CORE" -ma chine:x86' libpth=\lib libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shel l32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc 32.lib odbccp32.lib comctl32.lib msvcrt.lib perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl516.lib gnulibc_version='' Dynamic Linking: dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:\Perl\lib \CORE" -machine:x86' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES HAVE_INTERP_INTERN MULTIPLICITY PERLIO_LAYERS PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS PERL_MALLOC_WRAP PERL_PRESERVE_IVUV PL_OP_SLAB_ALLOC USE_ITHREADS USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_PERLIO USE_PERL_ATOF USE_SITECUSTOMIZE Locally applied patches: ActivePerl Build 1603 [296746] Built under MSWin32 Compiled at Mar 13 2013 11:29:21 @INC: C:/Perl/site/lib C:/Perl/lib .