This is the mail archive of the cygwin-apps@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]

Re: Update: perl-Win32-GUI, perl-libwin32


Gerrit P. Haase schrieb:
Reini Urban wrote:
Gerrit P. Haase schrieb:
Reini Urban wrote:

Ok, I fixed all cygwin issues. vendor, pid's, rebased, better pm_to_blib
patch.
http://xarch.tu-graz.ac.at/publ/cygwin/release/perl-Win32-GUI/perl-Win32-GUI-1.0-2.tar.bz2 http://xarch.tu-graz.ac.at/publ/cygwin/release/perl-Win32-GUI/perl-Win32-GUI-1.0-2-src.tar.bz2 http://xarch.tu-graz.ac.at/publ/cygwin/release/perl-libwin32/perl-libwin32-0.191-3.tar.bz2 http://xarch.tu-graz.ac.at/publ/cygwin/release/perl-libwin32/perl-libwin32-0.191-3-src.tar.bz2


Sorry, I was on a business trip for two weeks...
I tried to rebuild:

$ ./perl-libwin32-0.191-3.sh prep
patching file perl-libwin32-0.191/APIFile/File.pm
Hunk #1 FAILED at 5.


....

Hunk #2 FAILED at 22.
Hunk #3 FAILED at 48.
[...continues...]

What goes wrong? I have no idea, but I havn't looked closer at this.



Oops! Sorry. Stupid doseol issues.


I've updated this package to:
http://xarch.tu-graz.ac.at/publ/cygwin/release/perl-libwin32/perl-libwin32-0.191-4.tar.bz2


http://xarch.tu-graz.ac.at/publ/cygwin/release/perl-libwin32/perl-libwin32-0.191-4-src.tar.bz2

Binary package and setup.hint is the same.
Just the src patch and the build script fixes the dos eol to \n.


This is better now;)

Getting this warnings now:
WARNING: Having environment variable LIB set will most likely cause your build to fail!


Would be a not that bad to unset LIB in the build script (for me).

good idea.


I'm getting an error for ODBC:
gcc -c -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe -pipe -DUSEIMPORTLIB -O3 -DVERSION=\"0.032\" -DXS_VERSION=\"0.032\" "-I/usr/lib/perl5/5.8/cygwin/CORE" CMom.cpp
In file included from /usr/include/sql.h:87,
from CMom.cpp:26:
/usr/include/iodbcunix.h:118: Fehler: in Konflikt stehende Deklaration >>typedef unsigned int DWORD<<
/usr/lib/gcc/i686-pc-cygwin/3.4.1/../../../../include/w32api/windef.h:222: Fehler: >>DWORD<< hat eine vorherige Deklaration als >>typedef long unsigned int DWORDs<<
/usr/include/iodbcunix.h:118: Fehler: declaration of `typedef unsigned int DWORD'
/usr/lib/gcc/i686-pc-cygwin/3.4.1/../../../../include/w32api/windef.h:222: Fehler: conflicts with previous declaration `typedef long unsigned int DWORD'
/usr/include/iodbcunix.h:118: Fehler: declaration of `typedef unsigned int DWORD'
/usr/lib/gcc/i686-pc-cygwin/3.4.1/../../../../include/w32api/windef.h:222: Fehler: conflicts with previous declaration `typedef long unsigned int DWORD'
make[1]: *** [CMom.o] Fehler 1
make[1]: Leaving directory `/k/ftproot/pub/perl/libwin32/perl-libwin32-0.191/ODBC'
make: *** [subdirs] Fehler 2



You use the w32api counterpart of the iODBC /usr/include/sql.h? Moving it aside seems to work, however I get an error from the linker:

yes, iodbc is your/our private toy. we'll have to fix that later.


LD_RUN_PATH="" ld2 -s -L/usr/local/lib CMom.o Constant.o CResults.o ODBC.o Odbc.res -o ../blib/arch/auto/Win32/ODBC/ODBC.dll /usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr -lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid -lcomctl32 -lgdi32 -lcomdlg32 -lntdll
gcc -shared -o ODBC.dll -Wl,--out-implib=libODBC.dll.a -Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib CMom.o Constant.o CResults.o ODBC.o Odbc.res /usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr -lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid -lcomctl32 -lgdi32 -lcomdlg32 -lntdll
Creating library file: libODBC.dll.a
ODBC.o(.text+0x85e6):ODBC.cpp: undefined reference to `_SQLGetPrivateProfileString'
ODBC.o(.text+0x8bd2):ODBC.cpp: undefined reference to `_SQLGetPrivateProfileString'
ODBC.o(.text+0x1100d):ODBC.cpp: undefined reference to `_SQLConfigDataSource'
collect2: ld gab 1 als Ende-Status zur"uck
perlld: *** system() failed to execute
gcc -shared -o ODBC.dll -Wl,--out-implib=libODBC.dll.a -Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib CMom.o Constant.o CResults.o ODBC.o Odbc.res /usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr -lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid -lcomctl32 -lgdi32 -lcomdlg32 -lntdll

Hmm, -lodbccp32 (=> /lib/w32api/libodbccp32.a) should import those.
Do you miss that? This was last changed 3 years ago. The very first w32api version.
http://cvs.sourceforge.net/viewcvs.py/mingw/w32api/lib/


Or maybe you miss ODBCCP32.dll in $WINDIR/System32?

Do I need to update w32api:
$ cygcheck -c w32api
Cygwin Package Information
Package              Version        Status
w32api               3.1-1          OK

?

w32api-3.2-1 has some new definitions, but I thought that I check against that dynamically in win32perl.h:
Older commctrl.h misses some defs, the jobs functions (Win32::Process)
need >= 2.2-1


I'll checkin a fix against the iodbcunix clash with /usr/include/iodbcunix.h sooner or later (I already reported this clash some months ago).
But since this is no official package, please fix that on your side first, so that this can go out.
--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban
http://phpwiki.org



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