Re: does Inline::CPP recognize #import ?
[email protected] ("Sisyphus")
| Newsgroups | perl.inline |
|---|---|
| Message-ID | <C3C84F4BA8C4477B9487567D351CB009@desktop2> |
----- Original Message ----- From: "Xiao Yafeng" <[email protected]> To: "inline" <[email protected]>; "David Oswald" <[email protected]> Sent: Sunday, July 22, 2012 9:28 PM Subject: does Inline::CPP recognize #import ? >I have to use #import to import typed library , but seems Inline::CPP > doesn't know this and complain many errors: > > use Inline CPP=>Config=> > CC => 'cl.exe', > BUILD_NOISY => 1; If you want to use cl.exe as a C++ compiler, you'll need to do CC => 'cl /TP', otherwise the source files will be treated as C files. Was Inline::CPP originally installed using a different "CC" ? If so, then it might cause problems if you decide to switch to cl.exe. (Or it may not ... I don't know.) If I wanted to switch to another compiler then, instead of using the 'CC' config option, I would re-build and re-install Inline::CPP using that other compiler. (But make sure you specify 'cl /TP' as the compiler.) If you're using ActivePerl, you might just get away with that ... but if you're running Strawberry Perl, then switching to a Microsoft compiler might cause problems. > test_cpp_pl_57db.c > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(39) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(39) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error > C2143 > : syntax error : missing '{' before ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error > C2059 > : syntax error : ':' > C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error > C2143 > : syntax error : missing '{' before ':' Note that this is Visual Studio complaining about its own cstdio file - which also probably indicates that this C++ file (cstdio) is being parsed as a C file. Cheers, Rob