He is the author of node-png :p

But ya, like Bert said, you're going to have to migrate from libeio to
using libuv (likely uv_queue_work() ) to do the thread pool stuff.

On Wed, Mar 28, 2012 at 7:09 AM, Bert Belder <[email protected]> wrote:

> On Mar 28, 8:16 am, Peteris Krumins <[email protected]> wrote:
> > Hello!
> >
> > I'm trying to build node-png on Windows XP with node 0.6.14, node-gyp,
> > and Visual Studio 2010 Express edition but it's failing.
> >
> > Here is my bindings.gyp:
> >
> > {
> >     "targets": [
> >         {
> >             "target_name": "png",
> >             "sources": [
> >                 "src/common.cpp",
> >                 "src/png_encoder.cpp",
> >                 "src/png.cpp",
> >                 "src/fixed_png_stack.cpp",
> >                 "src/dynamic_png_stack.cpp",
> >                 "src/module.cpp",
> >                 "src/buffer_compat.cpp",
> >             ],
> >             "include_dirs" : [ "gyp/include" ]
> >         }
> >     ]
> >
> > }
> >
> > Running `node-gyp configure` succeeds but `node-gyp build` fails.
> > Below is the output from both commands. For some reason the C++
> > compiler reports the following error: `error C2061: syntax error :
> > identifier 'eio_req'`.
> >
> > I've added the necessary png include headers for Windows in `gyp`
> > folder and it's on my github athttp://github.com/pkrumins/node-png.
> >
> > Does anyone have any ideas about how to fix this error and build the
> > project?
> >
> > C:\node-png>node-gyp configure
> > info it worked if it ends with ok
> > spawn python [ 'C:\\node-png\\.node-gyp\\0.6.14\\tools\\gyp_addon',
> >   'binding.gyp',
> >   '-IC:\\node-png\\build\\config.gypi',
> >   '-f',
> >   'msvs',
> >   '-G',
> >   'msvs_version=2010' ]
> > info done ok
> >
> > C:\node-png>node-gyp build
> > info it worked if it ends with ok
> > spawn C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\msbuild.exe
> > [ 'build/binding
> > .sln',
> >   '/clp:Verbosity=minimal',
> >   '/nologo',
> >   '/p:Configuration=Release;Platform=Win32' ]
> >   dynamic_png_stack.cpp
> > C:\node-png\.node-gyp\0.6.14\src\node_object_wrap.h(57): warning
> > C4251: 'node::
> > ObjectWrap::handle_' : class 'v8::Persistent<T>' needs to have dll-
> > interface to
> >  be used by clients of class 'node::ObjectWrap' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::Object
> >           ]
> > C:\node-png\.node-gyp\0.6.14\src\node_buffer.h(68): warning C4251:
> > 'node::Buffe
> > r::constructor_template' : class 'v8::Persistent<T>' needs to have dll-
> > interfac
> > e to be used by clients of class 'node::Buffer' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::FunctionTemplate
> >           ]
> > c:\node-png\src\dynamic_png_stack.h(41): error C2061: syntax error :
> > identifier
> >  'eio_req' [C:\node-png\build\png.vcxproj]
> > c:\node-png\src\dynamic_png_stack.h(42): error C2061: syntax error :
> > identifier
> >  'eio_req' [C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(77): warning C4530: C++ exception handler
> > used, bu
> > t unwind semantics are not enabled. Specify /EHsc [C:\node-png\build
> > \png.vcxpro
> > j]
> > ..\src\dynamic_png_stack.cpp(229): error C2065: 'eio_req' : undeclared
> > identifi
> > er [C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(229): error C2065: 'req' : undeclared
> > identifier [
> > C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(230): error C2448:
> > 'DynamicPngStack::EIO_PngEncode
> > ' : function-style initializer appears to be a function definition [C:
> > \node-png
> > \build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(275): error C2065: 'eio_req' : undeclared
> > identifi
> > er [C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(275): error C2065: 'req' : undeclared
> > identifier [
> > C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(276): error C2448:
> > 'DynamicPngStack::EIO_PngEncode
> > After' : function-style initializer appears to be a function
> > definition [C:\nod
> > e-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(339): error C2065: 'EIO_PRI_DEFAULT' :
> > undeclared
> > identifier [C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(339): error C3861: 'eio_custom':
> > identifier not fo
> > und [C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(341): error C2065: 'EV_DEFAULT_UC' :
> > undeclared id
> > entifier [C:\node-png\build\png.vcxproj]
> > ..\src\dynamic_png_stack.cpp(341): error C3861: 'ev_ref': identifier
> > not found
> > [C:\node-png\build\png.vcxproj]
> >   fixed_png_stack.cpp
> > C:\node-png\.node-gyp\0.6.14\src\node_object_wrap.h(57): warning
> > C4251: 'node::
> > ObjectWrap::handle_' : class 'v8::Persistent<T>' needs to have dll-
> > interface to
> >  be used by clients of class 'node::ObjectWrap' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::Object
> >           ]
> > C:\node-png\.node-gyp\0.6.14\src\node_buffer.h(68): warning C4251:
> > 'node::Buffe
> > r::constructor_template' : class 'v8::Persistent<T>' needs to have dll-
> > interfac
> > e to be used by clients of class 'node::Buffer' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::FunctionTemplate
> >           ]
> > c:\node-png\src\fixed_png_stack.h(14): error C2061: syntax error :
> > identifier '
> > eio_req' [C:\node-png\build\png.vcxproj]
> > c:\node-png\src\fixed_png_stack.h(15): error C2061: syntax error :
> > identifier '
> > eio_req' [C:\node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(58): warning C4530: C++ exception handler
> > used, but
> > unwind semantics are not enabled. Specify /EHsc [C:\node-png\build
> > \png.vcxproj]
> > ..\src\fixed_png_stack.cpp(176): error C2065: 'eio_req' : undeclared
> > identifier
> >  [C:\node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(176): error C2065: 'req' : undeclared
> > identifier [C:
> > \node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(177): error C2448:
> > 'FixedPngStack::EIO_PngEncode' :
> > function-style initializer appears to be a function definition [C:
> > \node-png\bui
> > ld\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(200): error C2065: 'eio_req' : undeclared
> > identifier
> >  [C:\node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(200): error C2065: 'req' : undeclared
> > identifier [C:
> > \node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(201): error C2448:
> > 'FixedPngStack::EIO_PngEncodeAfte
> > r' : function-style initializer appears to be a function definition [C:
> > \node-pn
> > g\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(261): error C2065: 'EIO_PRI_DEFAULT' :
> > undeclared id
> > entifier [C:\node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(261): error C3861: 'eio_custom': identifier
> > not foun
> > d [C:\node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(263): error C2065: 'EV_DEFAULT_UC' :
> > undeclared iden
> > tifier [C:\node-png\build\png.vcxproj]
> > ..\src\fixed_png_stack.cpp(263): error C3861: 'ev_ref': identifier not
> > found [C
> > :\node-png\build\png.vcxproj]
> >   module.cpp
> > C:\node-png\.node-gyp\0.6.14\src\node_object_wrap.h(57): warning
> > C4251: 'node::
> > ObjectWrap::handle_' : class 'v8::Persistent<T>' needs to have dll-
> > interface to
> >  be used by clients of class 'node::ObjectWrap' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::Object
> >           ]
> > C:\node-png\.node-gyp\0.6.14\src\node_buffer.h(68): warning C4251:
> > 'node::Buffe
> > r::constructor_template' : class 'v8::Persistent<T>' needs to have dll-
> > interfac
> > e to be used by clients of class 'node::Buffer' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::FunctionTemplate
> >           ]
> > c:\node-png\src\png.h(14): error C2061: syntax error : identifier
> > 'eio_req' [C:
> > \node-png\build\png.vcxproj]
> > c:\node-png\src\png.h(15): error C2061: syntax error : identifier
> > 'eio_req' [C:
> > \node-png\build\png.vcxproj]
> > c:\node-png\src\fixed_png_stack.h(14): error C2061: syntax error :
> > identifier '
> > eio_req' [C:\node-png\build\png.vcxproj]
> > c:\node-png\src\fixed_png_stack.h(15): error C2061: syntax error :
> > identifier '
> > eio_req' [C:\node-png\build\png.vcxproj]
> > c:\node-png\src\dynamic_png_stack.h(41): error C2061: syntax error :
> > identifier
> >  'eio_req' [C:\node-png\build\png.vcxproj]
> > c:\node-png\src\dynamic_png_stack.h(42): error C2061: syntax error :
> > identifier
> >  'eio_req' [C:\node-png\build\png.vcxproj]
> >   png.cpp
> > C:\node-png\.node-gyp\0.6.14\src\node_object_wrap.h(57): warning
> > C4251: 'node::
> > ObjectWrap::handle_' : class 'v8::Persistent<T>' needs to have dll-
> > interface to
> >  be used by clients of class 'node::ObjectWrap' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::Object
> >           ]
> > C:\node-png\.node-gyp\0.6.14\src\node_buffer.h(68): warning C4251:
> > 'node::Buffe
> > r::constructor_template' : class 'v8::Persistent<T>' needs to have dll-
> > interfac
> > e to be used by clients of class 'node::Buffer' [C:\node-png\build
> > \png.vcxproj]
> >           with
> >           [
> >               T=v8::FunctionTemplate
> >           ]
> > c:\node-png\src\png.h(14): error C2061: syntax error : identifier
> > 'eio_req' [C:
> > \node-png\build\png.vcxproj]
> > c:\node-png\src\png.h(15): error C2061: syntax error : identifier
> > 'eio_req' [C:
> > \node-png\build\png.vcxproj]
> > ..\src\png.cpp(35): warning C4530: C++ exception handler used, but
> > unwind seman
> > tics are not enabled. Specify /EHsc [C:\node-png\build\png.vcxproj]
> > ..\src\png.cpp(113): error C2065: 'eio_req' : undeclared identifier [C:
> > \node-pn
> > g\build\png.vcxproj]
> > ..\src\png.cpp(113): error C2065: 'req' : undeclared identifier [C:
> > \node-png\bu
> > ild\png.vcxproj]
> > ..\src\png.cpp(114): error C2448: 'Png::EIO_PngEncode' : function-
> > style initial
> > izer appears to be a function definition [C:\node-png\build
> > \png.vcxproj]
> > ..\src\png.cpp(137): error C2065: 'eio_req' : undeclared identifier [C:
> > \node-pn
> > g\build\png.vcxproj]
> > ..\src\png.cpp(137): error C2065: 'req' : undeclared identifier [C:
> > \node-png\bu
> > ild\png.vcxproj]
> > ..\src\png.cpp(138): error C2448: 'Png::EIO_PngEncodeAfter' : function-
> > style in
> > itializer appears to be a function definition [C:\node-png\build
> > \png.vcxproj]
> > ..\src\png.cpp(204): error C2065: 'EIO_PRI_DEFAULT' : undeclared
> > identifier [C:
> > \node-png\build\png.vcxproj]
> > ..\src\png.cpp(204): error C3861: 'eio_custom': identifier not found
> > [C:\node-p
> > ng\build\png.vcxproj]
> > ..\src\png.cpp(206): error C2065: 'EV_DEFAULT_UC' : undeclared
> > identifier [C:\n
> > ode-png\build\png.vcxproj]
> > ..\src\png.cpp(206): error C3861: 'ev_ref': identifier not found [C:
> > \node-png\b
> > uild\png.vcxproj]
> > ERR! Error: `C:\WINDOWS\Microsoft.NET\Framework
> > \v4.0.30319\msbuild.exe` failed w
> > ith exit code: 1
> >     at Array.0 (C:\Documents and Settings\Administrator\Application
> > Data\npm\nod
> > e_modules\node-gyp\lib\build.js:176:25)
> >     at EventEmitter._tickCallback (node.js:192:40)
> > ERR! not ok
>
> It is a problem with node-png. It uses the libeio interface - but that
> is not available on windows. You should probably report a bug to the
> node-png maintainer (or attempt to fix it yourself.)
>
> - Bert
>
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to