This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

trying again - cpan/gcc cannot compile perl module after cygwin1.5*


Before the upgrade to 1.5* - 64 bit cygwin, this used to compile with the
default configuration just fine. Now it can't. I am aware that the entire
perl libwin32-0.191 distribution never did work completely with cygwin -
especially named pipes. However, the Win32::Semaphore module *did* - and
before the 1.5* upgrade, compiled flawlessly with the default
configuration. Not only that, but the resulting Win32::Semaphore.pm
*worked* flawlessly as well - and is an integral part of a production
system I now maintain. Luckily, the compiled binary from the previous
version of cygwin/gcc combo works just as flawlessly with the current
64-bit release of cygwin - but I can no longer compile it with the default
installation. I have backups of the binary - so there are no real problems
currently. However, since I can't and don't want to roll-back cygwin, I
need to find a way to successfully compile it with the latest version of
cygwin/gcc. If someone can see a quick fix - or work around - to this it
would obviously be a BIG help and be much appreciated.

Of course I'm aware that cygwin is now *64* bit compiled, and that I'm
looking to compile a *32* bit module. So I guess my first question, is
there backward compatibilty? And, if there is, how can I invoke it for
successful compilation? Also - any hope that the default installation will
ever again compile this, or is there now a need for a Win64::Semaphore
module?

Brian Kelly

- make
cp Semaphore.pm blib/lib/Win32/Semaphore.pm
/usr/bin/perl.exe /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap
/usr/lib/perl5/5.8.0/ExtUtils/typema
p -typemap typemap  Semaphore.xs > Semaphore.xsc && mv Semaphore.xsc
Semaphore.c
gcc -c   -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -DUSEIMPORTLIB -O3
-DVERSION=\"1.02\" -DXS_VER
SION=\"1.02\"  "-I/usr/lib/perl5/5.8.0/cygwin-multi-64int/CORE"
Semaphore.c
Semaphore.c: In function `XS_Win32__Semaphore_release':
Semaphore.c:139: warning: cast to pointer from integer of different size
Running Mkbootstrap for Win32::Semaphore ()
chmod 644 Semaphore.bs
rm -f blib/arch/auto/Win32/Semaphore/Semaphore.dll
LD_RUN_PATH="" ld2  -s -L/usr/local/lib Semaphore.o  -o
blib/arch/auto/Win32/Semaphore/Semaphore.dll
 /usr/lib/perl5/5.8.0/cygwin-multi-64int/CORE/libperl.dll.a
gcc -shared -o  Semaphore.dll -Wl,--out-implib=libSemaphore.dll.a -Wl,
--export-all-symbols -Wl,--enab
le-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib Semaphore.o
/usr/lib/perl5/5.8.0/cygwin-multi-64int/CORE/libperl.dll.a
Creating library file: libSemaphore.dll.a
Semaphore.o(.text+0x208):Semaphore.c: undefined reference to
`_CreateSemaphoreA'
Semaphore.o(.text+0x620):Semaphore.c: undefined reference to
`_OpenSemaphoreA'
Semaphore.o(.text+0x939):Semaphore.c: undefined reference to `_CloseHandle'
Semaphore.o(.text+0xc6a):Semaphore.c: undefined reference to
`_ReleaseSemaphore'
collect2: ld returned 1 exit status
perlld: *** system() failed to execute
gcc -shared -o  Semaphore.dll -Wl,--out-implib=libSemaphore.dll.a -Wl,
--export-all-symbols -Wl,--enab
le-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib Semaphore.o
/usr/lib/perl5/5.8.0/cygwin-multi-64int/CORE/libperl.dll.a

make: *** [blib/arch/auto/Win32/Semaphore/Semaphore.dll] Error 1
bmk1n0@STPNASCOFTP1 /cygdrive/c/temp/.cpan/build/libwin32-0.191/Semaphore



"WellChoice, Inc." made the following
 annotations on 11/15/2003 05:41:41 PM
------------------------------------------------------------------------------
Attention!  This electronic message contains information that may be legally
confidential and/or privileged.  The information is intended solely for the
individual or entity named above and access by anyone else is unauthorized.
If you are not the intended recipient, any disclosure, copying, distribution,
or use of the contents of this information is prohibited and may be unlawful.
If you have received this electronic transmission in error, please reply
immediately to the sender that you have received the message in error, and
delete it. Release/Disclosure Statement


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]