I recently downloaded the POE module for some recreational server coding, and ran across an example at http://www.perl.com/pub/2001/01/poe.html that I figured I'd like to try out.
So, downloading the example, I attempted to run it- what I ended up with was my least-favourite error (a redundant term):
Your vendor has not defined POSIX macro F_GETFL, used at C:/Perl/site/ +lib/POE/Wheel/SocketFactory.pm line 377
Here's is the code in that region of the module:
# Don't block on socket operations, because the socket will be # driven by a select loop. my $flags = fcntl($socket_handle, F_GETFL, 0) or do { $poe_kernel->yield($state_failure, 'fcntl', $!+0, $!); return undef; }; $flags = fcntl($socket_handle, F_SETFL, $flags | O_NONBLOCK) or do { $poe_kernel->yield($state_failure, 'fcntl', $!+0, $!); return undef; };
I am currently running ActivePerl Build 623 (Perl v5.6.0 built for MSWin32-x86-multi-thread). I have POSIX installed (obviously) in a directory listed in @INC, as well as FCNTL.pm.
Is there any way to get around this particular error? From what I've seen, I just cant get around using SocketFactory (at least easily), and it is an integral part of the reason I'm interested in POE in the first place.
I've looked through ActiveState's bug lists, and haven't come across any mention of F_GETFL in there...
Many thanks to any suggestions!
If further info is needed, please let me know!
*bangs head against windows*
- Brus
(thinks it's time for Linux)
In reply to When your vendor doesn't care... by interalia
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |