42 svobodných a otevřených projektů získalo finanční podporu od NLnet Foundation (Wikipedie).
Americký výrobce čipů Intel plánuje propustit více než 20 procent zaměstnanců. Cílem tohoto kroku je zjednodušit organizační strukturu ve firmě, která se potýká s problémy.
Byla vydána OpenMandriva Lx 6.0 s kódovým názvem Vanadium. Přehled novinek v poznámkách k vydání.
CSIRT.CZ, český národní CERT provozovaný na základě veřejnoprávní správní smlouvy společností CZ.NIC, shrnuje patnáct let svého fungování pod tímto sdružením: CSIRT.CZ – 15 let ve sdružení CZ.NIC.
Commodore OS Vision (Wikipedie) byl vydán v nové verzi 3.0. Jedná se o linuxovou distribuci určenou pro fanoušky značky Commodore. Předinstalována je na počítačích Commodore 64x.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 208. brněnský sraz, který proběhne v pátek 25. dubna od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1.
Ve svém článku Getting Forked by Microsoft popisuje autor programu Spegel svoji nepříjemnou zkušenost s firmou Microsoft. Firma ho kontaktovala a zpočátku to vypadalo, že by mohlo jít o oboustranně prospěšnou spolupráci, autor tedy ochotně odpovídal na jejich otázky ohledně architektury programu a pomáhal jim ho zprovoznit. Následně komunikace ze strany Microsoftu utichla. Autor předpokládal, že zřejmě došlo ke změně priorit a firma
… více »Společnost Notion Labs stojící za softwarovou platformou pro spolupráci Notion (Wikipedia) oficiálně představila (YouTube) poštovního klienta Notion Mail. Aktuálně funguje pouze nad Gmailem.
Byla vydána nová verze 9.12 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
/bin/perl: symbol lookup error: /usr/lib64/perl5/vendor_perl/auto/DBD/Sybase/Sybase.so: undefined symbol: Perl_Istack_sp_ptrNevíte, kde by mohla být chyba? Při instalaci modulu? Nějaká nekompatibilita perlu ? Perl je 5.16 System: RHEL 7 Freetds: 0.91 modul: perl-DBD-Sybase-1.10-1.el6.rf.x86_64 Děkuji.
Ta hláška říká, co je špatně: V Sybase.so je použit symbol Perl_Istack_sp_ptr, který ale nikde jinde v procesu s perlem nemáš.
Jestli chceš vědět, proč je to špatně, musíš se zeptat, proč instaluješ RPM balík určený pro RHEL 6 do systému RHEL 7. Každý má jiný perl, který poskytuje jiné symboly a Sybase.so byl přeložen proti starému, takže mu některé symboly chybí.
Řešením je přeložit balík perl-DBD-Sybase ze zdrojových kódů na RHEL 7. Pak ti výsledný binární balík půjde nainstalovat a asi i bude fungovat.
perldoc -lm DBD::Sybase?
[root@jh0vm002 DBD-Sybase-1.16]# make Skip blib/lib/DBD/dbd-sybase.pod (unchanged) Skip blib/lib/DBD/Sybase.pm (unchanged) gcc -c -I/usr/local/freetds/include -DSYB_LP64 -DNO_BLK=1 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC "-I/usr/lib64/perl5/CORE" Sybase.c In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24:0, from Sybase.h:16, from Sybase.xs:14: Sybase.c: In function ‘XS_DBD__Sybase__db__isdead’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:247:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__db__date_fmt’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:266:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.xs: In function ‘XS_DBD__Sybase__db_ping’: Sybase.xs:83:5: warning: implicit declaration of function ‘syb_ping’ [-Wimplicit-function-declaration] ST(0) = sv_2mortal(newSViv(syb_ping(dbh, imp_dbh))); ^ Sybase.xs: In function ‘XS_DBD__Sybase__st_cancel’: Sybase.xs:95:5: warning: implicit declaration of function ‘syb_st_cancel’ [-Wimplicit-function-declaration] ST(0) = syb_st_cancel(sth, imp_sth) ? &PL_sv_yes : &PL_sv_no; ^ In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24:0, from Sybase.h:16, from Sybase.xs:14: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:305:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_get_data’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:324:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:358:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_send_data’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:397:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_prepare_send’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:420:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_finish_send’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:439:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’: Sybase.xs:129:29: warning: ‘sybaction’ may be used uninitialized in this function [-Wmaybe-uninitialized] ST(0) = syb_ct_data_info(sth, imp_sth, sybaction, column, attr) ? &PL_sv_yes : &PL_sv_no; ^ Sybase.xs:123:9: note: ‘sybaction’ was declared here int sybaction; ^ gcc -c -I/usr/local/freetds/include -DSYB_LP64 -DNO_BLK=1 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC "-I/usr/lib64/perl5/CORE" dbdimp.c dbdimp.c: In function ‘cslibmsg_cb’: dbdimp.c:228:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:228:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:230:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:230:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:5012:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘clientmsg_cb’: /usr/lib64/perl5/CORE/pp.h:125:16: warning: value computed is not used [-Wunused-value] #define POPs (*sp--) ^ dbdimp.c:294:5: note: in expansion of macro ‘POPs’ POPs; ^ dbdimp.c:316:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:316:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:319:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:319:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:372:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:372:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:374:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:374:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c: In function ‘servermsg_cb’: dbdimp.c:404:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:404:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:406:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:406:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:5012:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: /usr/lib64/perl5/CORE/pp.h:125:16: warning: value computed is not used [-Wunused-value] #define POPs (*sp--) ^ dbdimp.c:502:4: note: in expansion of macro ‘POPs’ POPs; ^ dbdimp.c:540:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:540:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:543:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:543:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:580:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:580:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:582:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:582:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c: In function ‘syb_init’: dbdimp.c:771:9: warning: unused variable ‘boolean’ [-Wunused-variable] CS_INT boolean = CS_FALSE; ^ dbdimp.c: In function ‘get_server_version’: dbdimp.c:1661:8: warning: unused variable ‘db’ [-Wunused-variable] char *db; ^ dbdimp.c: In function ‘syb_db_opentran’: dbdimp.c:2049:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct imp_dbh_t *’ [-Wformat=] sprintf(imp_dbh->tranName, "DBI%x", imp_dbh); ^ dbdimp.c: In function ‘syb_db_disconnect’: dbdimp.c:2088:2: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if (imp_dbh->disconnectInChild = 0 && imp_dbh->pid != getpid()) { ^ dbdimp.c: In function ‘syb_db_STORE_attrib’: dbdimp.c:2177:7: warning: variable ‘ret’ set but not used [-Wunused-but-set-variable] int ret; ^ dbdimp.c: In function ‘syb_alloc_cmd’: dbdimp.c:2613:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] cmd, connection); ^ dbdimp.c:2613:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘struct CS_CONNECTION *’ [-Wformat=] dbdimp.c: In function ‘dbd_preparse’: dbdimp.c:2622:4: warning: unused variable ‘STATES’ [-Wunused-variable] } STATES; ^ dbdimp.c: In function ‘_convert’: dbdimp.c:3491:23: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses] if (DBIS->debug >= 3 && retcode != CS_SUCCEED || reslen == CS_UNUSED) ^ dbdimp.c: In function ‘cmd_execute’: dbdimp.c:3816:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] imp_sth->cmd, imp_sth->statement, imp_sth); ^ dbdimp.c:3816:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘struct imp_sth_t *’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘syb_st_fetch’: /usr/lib64/perl5/CORE/sv.h:1601:5: warning: pointer targets in initialization differ in signedness [-Wpointer-sign] ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ ^ dbdimp.c:4127:19: note: in expansion of macro ‘SvPV_nolen’ U8 *value = SvPV_nolen(sv); ^ dbdimp.c: In function ‘syb_st_destroy’: dbdimp.c:4440:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct imp_sth_t *’ [-Wformat=] " syb_st_destroy: called on %x...\n", imp_sth); ^ dbdimp.c:4475:6: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] " ct_cmd_drop() -> CS_COMMAND %x\n", imp_sth->cmd); ^ In file included from Sybase.h:16:0, from dbdimp.c:11: dbdimp.c: In function ‘syb_ct_send_data’: /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:381:45: warning: unused variable ‘imp_dbh’ [-Wunused-variable] #define D_imp_dbh_from_sth D_imp_from_child(imp_dbh, imp_dbh_t, imp_sth) ^ /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:379:39: note: in definition of macro ‘D_imp_from_child’ type *name = (type*)(DBIc_PARENT_COM(child)) ^ dbdimp.c:4628:2: note: in expansion of macro ‘D_imp_dbh_from_sth’ D_imp_dbh_from_sth; ^ dbdimp.c: In function ‘_dbd_rebind_ph’: dbdimp.c:5295:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 5 has type ‘IV’ [-Wformat=] phs->sv_buf, (long) phs->maxlen, SvOK(phs->sv) ? 1 : 0); ^ dbdimp.c:5301:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 6 has type ‘STRLEN’ [-Wformat=] value_len); ^ In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘syb_bind_ph’: /usr/lib64/perl5/CORE/sv.h:1568:13: warning: operation on ‘lna’ may be undefined [-Wsequence-point] ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags)) ^ /usr/lib64/perl5/CORE/sv.h:1562:22: note: in expansion of macro ‘SvPV_flags’ #define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC) ^ dbdimp.c:5389:23: note: in expansion of macro ‘SvPV’ lna), attribs ? SvPV(attribs, lna) : ""); ^ dbdimp.c: In function ‘fetch_data’: dbdimp.c:5528:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] sprintf(buff, "Error on row %ld.\n", row_count); ^ dbdimp.c: At top level: dbdimp.c:183:1: warning: ‘cslibmsg_cb’ defined but not used [-Wunused-function] cslibmsg_cb(CS_CONTEXT *context, CS_CLIENTMSG *errmsg) { ^ dbdimp.c:5807:13: warning: ‘blkCleanUp’ defined but not used [-Wunused-function] static void blkCleanUp(imp_sth_t *imp_sth, imp_dbh_t *imp_dbh) ^ dbdimp.c:5836:12: warning: ‘getTableName’ defined but not used [-Wunused-function] static int getTableName(char *statement, char *table, int maxwidth) { ^ dbdimp.c:3475:12: warning: ‘_convert’ defined but not used [-Wunused-function] static int _convert(void *ptr, char *str, CS_LOCALE *locale, ^ dbdimp.c:3502:19: warning: ‘get_cs_msg’ defined but not used [-Wunused-function] static CS_RETCODE get_cs_msg(CS_CONTEXT *context, CS_CONNECTION *connection, ^ dbdimp.c:3581:15: warning: ‘alloc_datatype’ defined but not used [-Wunused-function] static void * alloc_datatype(CS_INT datatype, int *len) { ^ dbdimp.c:3976:12: warning: ‘fix_fbav’ defined but not used [-Wunused-function] static int fix_fbav(imp_sth_t *imp_sth, int num_fields, AV *av) { ^ dbdimp.c: In function ‘dbd_preparse’: dbdimp.c:2697:16: warning: ‘pos’ may be used uninitialized in this function [-Wmaybe-uninitialized] varname[pos++] = *src; ^ Running Mkbootstrap for DBD::Sybase () chmod 644 Sybase.bs rm -f blib/arch/auto/DBD/Sybase/Sybase.so gcc -L/usr/local/freetds/lib -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro Sybase.o dbdimp.o -o blib/arch/auto/DBD/Sybase/Sybase.so \ -L/usr/local/freetds/lib -lct -ldl -lm \ chmod 755 blib/arch/auto/DBD/Sybase/Sybase.so cp Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs chmod 644 blib/arch/auto/DBD/Sybase/Sybase.bs Manifying blib/man3/DBD::Sybase.3 [root@jh0vm002 DBD-Sybase-1.16]# make install Files found in blib/arch: installing files in blib/lib into architecture dependent library tree Installing /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Sybase/Sybase.so Appending installation info to /root/perl5/lib/perl5/x86_64-linux-thread-multi/perllocal.pod [root@jh0vm002 DBD-Sybase-1.16]# ^C [root@jh0vm002 DBD-Sybase-1.16]# cd /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Sybase/Sybase.so bash: cd: /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Sybase/Sybase.so: Not a directory [root@jh0vm002 DBD-Sybase-1.16]# cd /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/DBD/Sybase/ [root@jh0vm002 Sybase]# mc [root@jh0vm002 DBD-Sybase-1.16]# perl Makefile.PL Unknown Client Library version - assuming FreeTDS. By default DBD::Sybase 1.05 and later use the 'CHAINED' mode (where available) when 'AutoCommit' is turned off. Versions 1.04 and older instead managed the transactions explicitly with a 'BEGIN TRAN' before the first DML statement. Using the 'CHAINED' mode is preferable as it is the way that Sybase implements AutoCommit handling for both its ODBC and JDBC drivers. Use 'CHAINED' mode by default (Y/N) [Y]: Y Running in threaded mode - looking for _r libraries... ***NOTE*** There is an incompatibility between perl (5.8.x or later) built in threaded mode and Sybase's threaded libraries, which means that signals delivered to the perl process result in a segment violation. I suggest building DBD::Sybase with the normal libraries in this case to get reasonable behavior for signal handling. Use the threaded (lib..._r) libraries [N]: N OK - I'll use the normal libs Running in 64bit mode - looking for '64' libraries... BLK api NOT available. The DBD::Sybase module need access to a Sybase server to run the tests. To clear an entry please enter 'undef' Sybase server to use (default: SYBASE): User ID to log in to Sybase (default: sa): Password (default: undef): Sybase database to use on SYBASE (default: undef): * Writing login information, including password, to file PWD. Warning (mostly harmless): No library found for -lcs Warning (mostly harmless): No library found for -lsybtcl Warning (mostly harmless): No library found for -lcomn Warning (mostly harmless): No library found for -lintl Warning (mostly harmless): No library found for -lblk Using DBI 1.627 (for perl 5.016003 on x86_64-linux-thread-multi) installed in /usr/lib64/perl5/vendor_perl/auto/DBI/ Writing Makefile for DBD::Sybase Writing MYMETA.yml and MYMETA.json [root@jh0vm002 DBD-Sybase-1.16]# make Skip blib/lib/DBD/dbd-sybase.pod (unchanged) Skip blib/lib/DBD/Sybase.pm (unchanged) gcc -c -I/usr/local/freetds/include -DSYB_LP64 -DNO_BLK=1 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC "-I/usr/lib64/perl5/CORE" Sybase.c In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24:0, from Sybase.h:16, from Sybase.xs:14: Sybase.c: In function ‘XS_DBD__Sybase__db__isdead’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:247:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__db__date_fmt’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:266:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.xs: In function ‘XS_DBD__Sybase__db_ping’: Sybase.xs:83:5: warning: implicit declaration of function ‘syb_ping’ [-Wimplicit-function-declaration] ST(0) = sv_2mortal(newSViv(syb_ping(dbh, imp_dbh))); ^ Sybase.xs: In function ‘XS_DBD__Sybase__st_cancel’: Sybase.xs:95:5: warning: implicit declaration of function ‘syb_st_cancel’ [-Wimplicit-function-declaration] ST(0) = syb_st_cancel(sth, imp_sth) ? &PL_sv_yes : &PL_sv_no; ^ In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24:0, from Sybase.h:16, from Sybase.xs:14: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:305:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_get_data’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:324:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:358:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_send_data’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:397:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_prepare_send’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:420:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_finish_send’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:439:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’: Sybase.xs:129:29: warning: ‘sybaction’ may be used uninitialized in this function [-Wmaybe-uninitialized] ST(0) = syb_ct_data_info(sth, imp_sth, sybaction, column, attr) ? &PL_sv_yes : &PL_sv_no; ^ Sybase.xs:123:9: note: ‘sybaction’ was declared here int sybaction; ^ gcc -c -I/usr/local/freetds/include -DSYB_LP64 -DNO_BLK=1 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC "-I/usr/lib64/perl5/CORE" dbdimp.c dbdimp.c: In function ‘cslibmsg_cb’: dbdimp.c:228:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:228:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:230:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:230:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:5012:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘clientmsg_cb’: /usr/lib64/perl5/CORE/pp.h:125:16: warning: value computed is not used [-Wunused-value] #define POPs (*sp--) ^ dbdimp.c:294:5: note: in expansion of macro ‘POPs’ POPs; ^ dbdimp.c:316:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:316:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:319:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:319:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:372:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:372:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:374:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:374:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c: In function ‘servermsg_cb’: dbdimp.c:404:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:404:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:406:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:406:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:5012:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: /usr/lib64/perl5/CORE/pp.h:125:16: warning: value computed is not used [-Wunused-value] #define POPs (*sp--) ^ dbdimp.c:502:4: note: in expansion of macro ‘POPs’ POPs; ^ dbdimp.c:540:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:540:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:543:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:543:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:580:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:580:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:582:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:582:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c: In function ‘syb_init’: dbdimp.c:771:9: warning: unused variable ‘boolean’ [-Wunused-variable] CS_INT boolean = CS_FALSE; ^ dbdimp.c: In function ‘get_server_version’: dbdimp.c:1661:8: warning: unused variable ‘db’ [-Wunused-variable] char *db; ^ dbdimp.c: In function ‘syb_db_opentran’: dbdimp.c:2049:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct imp_dbh_t *’ [-Wformat=] sprintf(imp_dbh->tranName, "DBI%x", imp_dbh); ^ dbdimp.c: In function ‘syb_db_disconnect’: dbdimp.c:2088:2: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if (imp_dbh->disconnectInChild = 0 && imp_dbh->pid != getpid()) { ^ dbdimp.c: In function ‘syb_db_STORE_attrib’: dbdimp.c:2177:7: warning: variable ‘ret’ set but not used [-Wunused-but-set-variable] int ret; ^ dbdimp.c: In function ‘syb_alloc_cmd’: dbdimp.c:2613:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] cmd, connection); ^ dbdimp.c:2613:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘struct CS_CONNECTION *’ [-Wformat=] dbdimp.c: In function ‘dbd_preparse’: dbdimp.c:2622:4: warning: unused variable ‘STATES’ [-Wunused-variable] } STATES; ^ dbdimp.c: In function ‘_convert’: dbdimp.c:3491:23: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses] if (DBIS->debug >= 3 && retcode != CS_SUCCEED || reslen == CS_UNUSED) ^ dbdimp.c: In function ‘cmd_execute’: dbdimp.c:3816:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] imp_sth->cmd, imp_sth->statement, imp_sth); ^ dbdimp.c:3816:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘struct imp_sth_t *’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘syb_st_fetch’: /usr/lib64/perl5/CORE/sv.h:1601:5: warning: pointer targets in initialization differ in signedness [-Wpointer-sign] ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ ^ dbdimp.c:4127:19: note: in expansion of macro ‘SvPV_nolen’ U8 *value = SvPV_nolen(sv); ^ dbdimp.c: In function ‘syb_st_destroy’: dbdimp.c:4440:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct imp_sth_t *’ [-Wformat=] " syb_st_destroy: called on %x...\n", imp_sth); ^ dbdimp.c:4475:6: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] " ct_cmd_drop() -> CS_COMMAND %x\n", imp_sth->cmd); ^ In file included from Sybase.h:16:0, from dbdimp.c:11: dbdimp.c: In function ‘syb_ct_send_data’: /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:381:45: warning: unused variable ‘imp_dbh’ [-Wunused-variable] #define D_imp_dbh_from_sth D_imp_from_child(imp_dbh, imp_dbh_t, imp_sth) ^ /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:379:39: note: in definition of macro ‘D_imp_from_child’ type *name = (type*)(DBIc_PARENT_COM(child)) ^ dbdimp.c:4628:2: note: in expansion of macro ‘D_imp_dbh_from_sth’ D_imp_dbh_from_sth; ^ dbdimp.c: In function ‘_dbd_rebind_ph’: dbdimp.c:5295:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 5 has type ‘IV’ [-Wformat=] phs->sv_buf, (long) phs->maxlen, SvOK(phs->sv) ? 1 : 0); ^ dbdimp.c:5301:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 6 has type ‘STRLEN’ [-Wformat=] value_len); ^ In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘syb_bind_ph’: /usr/lib64/perl5/CORE/sv.h:1568:13: warning: operation on ‘lna’ may be undefined [-Wsequence-point] ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags)) ^ /usr/lib64/perl5/CORE/sv.h:1562:22: note: in expansion of macro ‘SvPV_flags’ #define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC) ^ dbdimp.c:5389:23: note: in expansion of macro ‘SvPV’ lna), attribs ? SvPV(attribs, lna) : ""); ^ dbdimp.c: In function ‘fetch_data’: dbdimp.c:5528:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] sprintf(buff, "Error on row %ld.\n", row_count); ^ dbdimp.c: At top level: dbdimp.c:183:1: warning: ‘cslibmsg_cb’ defined but not used [-Wunused-function] cslibmsg_cb(CS_CONTEXT *context, CS_CLIENTMSG *errmsg) { ^ dbdimp.c:5807:13: warning: ‘blkCleanUp’ defined but not used [-Wunused-function] static void blkCleanUp(imp_sth_t *imp_sth, imp_dbh_t *imp_dbh) ^ dbdimp.c:5836:12: warning: ‘getTableName’ defined but not used [-Wunused-function] static int getTableName(char *statement, char *table, int maxwidth) { ^ dbdimp.c:3475:12: warning: ‘_convert’ defined but not used [-Wunused-function] static int _convert(void *ptr, char *str, CS_LOCALE *locale, ^ dbdimp.c:3502:19: warning: ‘get_cs_msg’ defined but not used [-Wunused-function] static CS_RETCODE get_cs_msg(CS_CONTEXT *context, CS_CONNECTION *connection, ^ dbdimp.c:3581:15: warning: ‘alloc_datatype’ defined but not used [-Wunused-function] static void * alloc_datatype(CS_INT datatype, int *len) { ^ dbdimp.c:3976:12: warning: ‘fix_fbav’ defined but not used [-Wunused-function] static int fix_fbav(imp_sth_t *imp_sth, int num_fields, AV *av) { ^ dbdimp.c: In function ‘dbd_preparse’: dbdimp.c:2697:16: warning: ‘pos’ may be used uninitialized in this function [-Wmaybe-uninitialized] varname[pos++] = *src; ^ Running Mkbootstrap for DBD::Sybase () chmod 644 Sybase.bs rm -f blib/arch/auto/DBD/Sybase/Sybase.so gcc -L/usr/local/freetds/lib -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro Sybase.o dbdimp.o -o blib/arch/auto/DBD/Sybase/Sybase.so \ -L/usr/local/freetds/lib -lct -ldl -lm \ chmod 755 blib/arch/auto/DBD/Sybase/Sybase.so cp Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs chmod 644 blib/arch/auto/DBD/Sybase/Sybase.bs Manifying blib/man3/DBD::Sybase.3-------------------- když dám perldoc -lm DBD::Sybase tak to modul nenajde: No module found for "DBD::Sybase".
make clean perl Makefile.PL make testa sleduj ci niekde nie je nejaky problem, presli vsetky testy? Ak nie, kolko a ktore testy nepresli?
[root@jh0vm002 DBD-Sybase-1.16]# make clean rm -f \ core.[0-9] Sybase.bso \ pm_to_blib.ts core.[0-9][0-9][0-9][0-9] \ MYMETA.yml perl \ tmon.out *.o \ pm_to_blib blibdirs.ts \ *perl.core core.*perl.*.? \ Sybase.def core.[0-9][0-9][0-9] \ mon.out libSybase.def \ perlmain.c perl.exe \ so_locations Sybase.exp \ *.a core \ blib/arch/auto/DBD/Sybase/extralibs.all core.[0-9][0-9] \ MYMETA.json Sybase.bs \ Sybase.x blib/arch/auto/DBD/Sybase/extralibs.ld \ Sybase.c core.[0-9][0-9][0-9][0-9][0-9] \ Makefile.aperl perl rm -rf \ Sybase.xsi PWD \ blib mv Makefile Makefile.old > /dev/null 2>&1 [root@jh0vm002 DBD-Sybase-1.16]# perl Makefile.PL Unknown Client Library version - assuming FreeTDS. By default DBD::Sybase 1.05 and later use the 'CHAINED' mode (where available) when 'AutoCommit' is turned off. Versions 1.04 and older instead managed the transactions explicitly with a 'BEGIN TRAN' before the first DML statement. Using the 'CHAINED' mode is preferable as it is the way that Sybase implements AutoCommit handling for both its ODBC and JDBC drivers. Use 'CHAINED' mode by default (Y/N) [Y]: Running in threaded mode - looking for _r libraries... ***NOTE*** There is an incompatibility between perl (5.8.x or later) built in threaded mode and Sybase's threaded libraries, which means that signals delivered to the perl process result in a segment violation. I suggest building DBD::Sybase with the normal libraries in this case to get reasonable behavior for signal handling. Use the threaded (lib..._r) libraries [N]: OK - I'll use the normal libs Running in 64bit mode - looking for '64' libraries... BLK api NOT available. The DBD::Sybase module need access to a Sybase server to run the tests. To clear an entry please enter 'undef' Sybase server to use (default: SYBASE): User ID to log in to Sybase (default: sa): Password (default: undef): Sybase database to use on SYBASE (default: undef): * Writing login information, including password, to file PWD. Checking if your kit is complete... Looks good Warning (mostly harmless): No library found for -lcs Warning (mostly harmless): No library found for -lsybtcl Warning (mostly harmless): No library found for -lcomn Warning (mostly harmless): No library found for -lintl Warning (mostly harmless): No library found for -lblk Using DBI 1.627 (for perl 5.016003 on x86_64-linux-thread-multi) installed in /usr/lib64/perl5/vendor_perl/auto/DBI/ Writing Makefile for DBD::Sybase Writing MYMETA.yml and MYMETA.json [root@jh0vm002 DBD-Sybase-1.16]# make test cp dbd-sybase.pod blib/lib/DBD/dbd-sybase.pod cp Sybase.pm blib/lib/DBD/Sybase.pm /usr/bin/perl -p -e "s/~DRIVER~/Sybase/g" /usr/lib64/perl5/vendor_perl/auto/DBI/Driver.xst > Sybase.xsi /usr/bin/perl /usr/share/perl5/vendor_perl/ExtUtils/xsubpp -typemap /usr/share/perl5/ExtUtils/typemap Sybase.xs > Sybase.xsc && mv Sybase.xsc Sybase.c gcc -c -I/usr/local/freetds/include -DSYB_LP64 -DNO_BLK=1 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC "-I/usr/lib64/perl5/CORE" Sybase.c In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24:0, from Sybase.h:16, from Sybase.xs:14: Sybase.c: In function ‘XS_DBD__Sybase__db__isdead’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:247:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__db__date_fmt’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:266:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.xs: In function ‘XS_DBD__Sybase__db_ping’: Sybase.xs:83:5: warning: implicit declaration of function ‘syb_ping’ [-Wimplicit-function-declaration] ST(0) = sv_2mortal(newSViv(syb_ping(dbh, imp_dbh))); ^ Sybase.xs: In function ‘XS_DBD__Sybase__st_cancel’: Sybase.xs:95:5: warning: implicit declaration of function ‘syb_st_cancel’ [-Wimplicit-function-declaration] ST(0) = syb_st_cancel(sth, imp_sth) ? &PL_sv_yes : &PL_sv_no; ^ In file included from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:24:0, from Sybase.h:16, from Sybase.xs:14: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:305:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_get_data’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:324:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:358:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_send_data’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:397:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_prepare_send’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:420:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_finish_send’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ Sybase.c:439:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ Sybase.c: In function ‘XS_DBD__Sybase__st_ct_data_info’: Sybase.xs:129:29: warning: ‘sybaction’ may be used uninitialized in this function [-Wmaybe-uninitialized] ST(0) = syb_ct_data_info(sth, imp_sth, sybaction, column, attr) ? &PL_sv_yes : &PL_sv_no; ^ Sybase.xs:123:9: note: ‘sybaction’ was declared here int sybaction; ^ gcc -c -I/usr/local/freetds/include -DSYB_LP64 -DNO_BLK=1 -I/usr/lib64/perl5/vendor_perl/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.16\" -DXS_VERSION=\"1.16\" -fPIC "-I/usr/lib64/perl5/CORE" dbdimp.c dbdimp.c: In function ‘cslibmsg_cb’: dbdimp.c:228:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:228:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:230:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:230:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:5012:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘clientmsg_cb’: /usr/lib64/perl5/CORE/pp.h:125:16: warning: value computed is not used [-Wunused-value] #define POPs (*sp--) ^ dbdimp.c:294:5: note: in expansion of macro ‘POPs’ POPs; ^ dbdimp.c:316:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:316:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:319:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:319:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:372:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_LAYER(errmsg->msgnumber), CS_ORIGIN(errmsg->msgnumber)); ^ dbdimp.c:372:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c:374:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘int’ [-Wformat=] CS_SEVERITY(errmsg->msgnumber), CS_NUMBER(errmsg->msgnumber)); ^ dbdimp.c:374:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat=] dbdimp.c: In function ‘servermsg_cb’: dbdimp.c:404:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:404:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:406:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:406:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:5012:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: /usr/lib64/perl5/CORE/pp.h:125:16: warning: value computed is not used [-Wunused-value] #define POPs (*sp--) ^ dbdimp.c:502:4: note: in expansion of macro ‘POPs’ POPs; ^ dbdimp.c:540:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:540:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:543:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:543:5: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:580:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_MSGNUM’ [-Wformat=] srvmsg->msgnumber, srvmsg->severity); ^ dbdimp.c:580:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c:582:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] srvmsg->state, srvmsg->line); ^ dbdimp.c:582:6: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘CS_INT’ [-Wformat=] dbdimp.c: In function ‘syb_init’: dbdimp.c:771:9: warning: unused variable ‘boolean’ [-Wunused-variable] CS_INT boolean = CS_FALSE; ^ dbdimp.c: In function ‘get_server_version’: dbdimp.c:1661:8: warning: unused variable ‘db’ [-Wunused-variable] char *db; ^ dbdimp.c: In function ‘syb_db_opentran’: dbdimp.c:2049:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct imp_dbh_t *’ [-Wformat=] sprintf(imp_dbh->tranName, "DBI%x", imp_dbh); ^ dbdimp.c: In function ‘syb_db_disconnect’: dbdimp.c:2088:2: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if (imp_dbh->disconnectInChild = 0 && imp_dbh->pid != getpid()) { ^ dbdimp.c: In function ‘syb_db_STORE_attrib’: dbdimp.c:2177:7: warning: variable ‘ret’ set but not used [-Wunused-but-set-variable] int ret; ^ dbdimp.c: In function ‘syb_alloc_cmd’: dbdimp.c:2613:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] cmd, connection); ^ dbdimp.c:2613:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘struct CS_CONNECTION *’ [-Wformat=] dbdimp.c: In function ‘dbd_preparse’: dbdimp.c:2622:4: warning: unused variable ‘STATES’ [-Wunused-variable] } STATES; ^ dbdimp.c: In function ‘_convert’: dbdimp.c:3491:23: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses] if (DBIS->debug >= 3 && retcode != CS_SUCCEED || reslen == CS_UNUSED) ^ dbdimp.c: In function ‘cmd_execute’: dbdimp.c:3816:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] imp_sth->cmd, imp_sth->statement, imp_sth); ^ dbdimp.c:3816:7: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘struct imp_sth_t *’ [-Wformat=] In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘syb_st_fetch’: /usr/lib64/perl5/CORE/sv.h:1601:5: warning: pointer targets in initialization differ in signedness [-Wpointer-sign] ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ ^ dbdimp.c:4127:19: note: in expansion of macro ‘SvPV_nolen’ U8 *value = SvPV_nolen(sv); ^ dbdimp.c: In function ‘syb_st_destroy’: dbdimp.c:4440:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct imp_sth_t *’ [-Wformat=] " syb_st_destroy: called on %x...\n", imp_sth); ^ dbdimp.c:4475:6: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘struct CS_COMMAND *’ [-Wformat=] " ct_cmd_drop() -> CS_COMMAND %x\n", imp_sth->cmd); ^ In file included from Sybase.h:16:0, from dbdimp.c:11: dbdimp.c: In function ‘syb_ct_send_data’: /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:381:45: warning: unused variable ‘imp_dbh’ [-Wunused-variable] #define D_imp_dbh_from_sth D_imp_from_child(imp_dbh, imp_dbh_t, imp_sth) ^ /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:379:39: note: in definition of macro ‘D_imp_from_child’ type *name = (type*)(DBIc_PARENT_COM(child)) ^ dbdimp.c:4628:2: note: in expansion of macro ‘D_imp_dbh_from_sth’ D_imp_dbh_from_sth; ^ dbdimp.c: In function ‘_dbd_rebind_ph’: dbdimp.c:5295:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 5 has type ‘IV’ [-Wformat=] phs->sv_buf, (long) phs->maxlen, SvOK(phs->sv) ? 1 : 0); ^ dbdimp.c:5301:5: warning: format ‘%d’ expects argument of type ‘int’, but argument 6 has type ‘STRLEN’ [-Wformat=] value_len); ^ In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from /usr/lib64/perl5/vendor_perl/auto/DBI/DBIXS.h:23, from Sybase.h:16, from dbdimp.c:11: dbdimp.c: In function ‘syb_bind_ph’: /usr/lib64/perl5/CORE/sv.h:1568:13: warning: operation on ‘lna’ may be undefined [-Wsequence-point] ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags)) ^ /usr/lib64/perl5/CORE/sv.h:1562:22: note: in expansion of macro ‘SvPV_flags’ #define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC) ^ dbdimp.c:5389:23: note: in expansion of macro ‘SvPV’ lna), attribs ? SvPV(attribs, lna) : ""); ^ dbdimp.c: In function ‘fetch_data’: dbdimp.c:5528:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 3 has type ‘CS_INT’ [-Wformat=] sprintf(buff, "Error on row %ld.\n", row_count); ^ dbdimp.c: At top level: dbdimp.c:183:1: warning: ‘cslibmsg_cb’ defined but not used [-Wunused-function] cslibmsg_cb(CS_CONTEXT *context, CS_CLIENTMSG *errmsg) { ^ dbdimp.c:5807:13: warning: ‘blkCleanUp’ defined but not used [-Wunused-function] static void blkCleanUp(imp_sth_t *imp_sth, imp_dbh_t *imp_dbh) ^ dbdimp.c:5836:12: warning: ‘getTableName’ defined but not used [-Wunused-function] static int getTableName(char *statement, char *table, int maxwidth) { ^ dbdimp.c:3475:12: warning: ‘_convert’ defined but not used [-Wunused-function] static int _convert(void *ptr, char *str, CS_LOCALE *locale, ^ dbdimp.c:3502:19: warning: ‘get_cs_msg’ defined but not used [-Wunused-function] static CS_RETCODE get_cs_msg(CS_CONTEXT *context, CS_CONNECTION *connection, ^ dbdimp.c:3581:15: warning: ‘alloc_datatype’ defined but not used [-Wunused-function] static void * alloc_datatype(CS_INT datatype, int *len) { ^ dbdimp.c:3976:12: warning: ‘fix_fbav’ defined but not used [-Wunused-function] static int fix_fbav(imp_sth_t *imp_sth, int num_fields, AV *av) { ^ dbdimp.c: In function ‘dbd_preparse’: dbdimp.c:2697:16: warning: ‘pos’ may be used uninitialized in this function [-Wmaybe-uninitialized] varname[pos++] = *src; ^ Running Mkbootstrap for DBD::Sybase () chmod 644 Sybase.bs rm -f blib/arch/auto/DBD/Sybase/Sybase.so gcc -L/usr/local/freetds/lib -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro Sybase.o dbdimp.o -o blib/arch/auto/DBD/Sybase/Sybase.so \ -L/usr/local/freetds/lib -lct -ldl -lm \ chmod 755 blib/arch/auto/DBD/Sybase/Sybase.so cp Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs chmod 644 blib/arch/auto/DBD/Sybase/Sybase.bs PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/autocommit.t .. 1/9 # Failed test 'use DBD::Sybase;' # at t/autocommit.t line 18. # Tried to use 'DBD::Sybase'. # Error: Can't load 'blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/autocommit.t line 27. # Looks like you planned 9 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/autocommit.t .. Dubious, test returned 255 (wstat 65280, 0xff00) Failed 8/9 subtests t/base.t ........ install_driver(Sybase) failed: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. at (eval 3) line 3. Compilation failed in require at (eval 3) line 3. Perhaps a required shared library or dll isn't installed where expected at t/base.t line 18. t/base.t ........ Dubious, test returned 2 (wstat 512, 0x200) Failed 2/5 subtests t/exec.t ........ 1/22 # Failed test 'use DBD::Sybase;' # at t/exec.t line 18. # Tried to use 'DBD::Sybase'. # Error: Can't load 'blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/exec.t line 29. # Looks like you planned 22 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/exec.t ........ Dubious, test returned 255 (wstat 65280, 0xff00) Failed 21/22 subtests t/fail.t ........ 1/12 # Failed test 'use DBD::Sybase;' # at t/fail.t line 16. # Tried to use 'DBD::Sybase'. # Error: Can't load 'blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/fail.t line 22. # Looks like you planned 12 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/fail.t ........ Dubious, test returned 255 (wstat 65280, 0xff00) Failed 11/12 subtests t/login.t ....... 2/6 # Failed test 'use DBD::Sybase;' # at t/login.t line 18. # Tried to use 'DBD::Sybase'. # Error: Can't load 'blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/login.t line 23. # Looks like you planned 6 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/login.t ....... Dubious, test returned 255 (wstat 65280, 0xff00) Failed 5/6 subtests t/main.t ........ 1/36 # Failed test 'use DBD::Sybase;' # at t/main.t line 18. # Tried to use 'DBD::Sybase'. # Error: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/main.t line 31. # Looks like you planned 36 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 2 just after 2. t/main.t ........ Dubious, test returned 2 (wstat 512, 0x200) Failed 35/36 subtests t/multi_sth.t ... 1/43 # Failed test 'use DBD::Sybase;' # at t/multi_sth.t line 16. # Tried to use 'DBD::Sybase'. # Error: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/multi_sth.t line 22. # Looks like you planned 43 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/multi_sth.t ... Dubious, test returned 255 (wstat 65280, 0xff00) Failed 42/43 subtests t/nsql.t ........ 1/7 # Failed test 'use DBD::Sybase;' # at t/nsql.t line 15. # Tried to use 'DBD::Sybase'. # Error: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/nsql.t line 20. # Looks like you planned 7 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/nsql.t ........ Dubious, test returned 255 (wstat 65280, 0xff00) Failed 6/7 subtests t/place.t ....... 1/18 # Failed test 'use DBD::Sybase;' # at t/place.t line 13. # Tried to use 'DBD::Sybase'. # Error: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/place.t line 18. # Looks like you planned 18 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/place.t ....... Dubious, test returned 255 (wstat 65280, 0xff00) Failed 17/18 subtests t/thread.t ...... Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. at t/thread.t line 18. Compilation failed in require at t/thread.t line 18. BEGIN failed--compilation aborted at t/thread.t line 18. t/thread.t ...... Dubious, test returned 2 (wstat 512, 0x200) No subtests run t/utf8.t ........ Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. at t/utf8.t line 19. Compilation failed in require at t/utf8.t line 19. BEGIN failed--compilation aborted at t/utf8.t line 19. t/utf8.t ........ Dubious, test returned 2 (wstat 512, 0x200) No subtests run t/xblk.t ........ 1/62 # Failed test 'use DBD::Sybase;' # at t/xblk.t line 15. # Tried to use 'DBD::Sybase'. # Error: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. Undefined subroutine &DBD::Sybase::set_cslib_cb called at t/xblk.t line 36. # Looks like you planned 62 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/xblk.t ........ Dubious, test returned 255 (wstat 65280, 0xff00) Failed 61/62 subtests t/xblob.t ....... 1/11 # Failed test 'use DBD::Sybase;' # at t/xblob.t line 16. # Tried to use 'DBD::Sybase'. # Error: Can't load '/local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: /local/home/pao9jh/DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190. # at (eval 7) line 2. # Compilation failed in require at (eval 7) line 2. # BEGIN failed--compilation aborted at (eval 7) line 2. install_driver(Sybase) failed: Attempt to reload DBD/Sybase.pm aborted. Compilation failed in require at (eval 8) line 3. at t/xblob.t line 21. # Looks like you planned 11 tests but ran 2. # Looks like you failed 1 test of 2 run. # Looks like your test exited with 255 just after 2. t/xblob.t ....... Dubious, test returned 255 (wstat 65280, 0xff00) Failed 10/11 subtests Test Summary Report ------------------- t/autocommit.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 9 tests but ran 2. t/base.t (Wstat: 512 Tests: 3 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 5 tests but ran 3. t/exec.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 22 tests but ran 2. t/fail.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 12 tests but ran 2. t/login.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 6 tests but ran 2. t/main.t (Wstat: 512 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 2 Parse errors: Bad plan. You planned 36 tests but ran 2. t/multi_sth.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 43 tests but ran 2. t/nsql.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 7 tests but ran 2. t/place.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 18 tests but ran 2. t/thread.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output t/utf8.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output t/xblk.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 62 tests but ran 2. t/xblob.t (Wstat: 65280 Tests: 2 Failed: 1) Failed test: 2 Non-zero exit status: 255 Parse errors: Bad plan. You planned 11 tests but ran 2. Files=13, Tests=23, 1 wallclock secs ( 0.04 usr 0.02 sys + 0.40 cusr 0.08 csys = 0.54 CPU) Result: FAIL Failed 13/13 test programs. 10/23 subtests failed. make: *** [test_dynamic] Error 255 [root@jh0vm002 DBD-Sybase-1.16]#
# Error: Can't load 'blib/arch/auto/DBD/Sybase/Sybase.so' for module DBD::Sybase: blib/arch/auto/DBD/Sybase/Sybase.so: undefined symbol: cs_dt_crack_v2 at /usr/lib64/perl5/DynaLoader.pm line 190.
Testy neprošly protože dynamický linker nemůže najít symbol cs_dt_crack_v2 při zavádění přeložené knihovny Sybase.so.
Podle Googlu cs_dt_crack_v2 je dodáván projektem FreeTDS. cs_dt_crack_v2 se ve zdrojácích DBD-Sybase vůbec nenachází. Z DBD-Sybase se používá cs_dt_crack, který hlavičkové soubory FreeTDS declarují jako cs_dt_crack_v2. Zdrojový kód FreeTDS definuje cs_dt_crack_v2 v src/ctlib/cs.c a ten ten se linkuje do knihovny libct.
gcc -L/usr/local/freetds/lib -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro Sybase.o dbdimp.o -o blib/arch/auto/DBD/Sybase/Sybase.so \ -L/usr/local/freetds/lib -lct -ldl -lm \
K Sybase.so se knihovna libct při překladu linkuje.
Takže celý problém je, že buďto máte v systému jinou knihovnu libct, která je v cestě, která má přednost před /usr/local/freetds/lib, a která neposkytuje cs_dt_crack_v2. Nebo skutečně používáte libct knihovnu z /usr/local/freetds/lib, ale v ní je chyba a symbol neposkytuje.
Odkud libct knihovnu používáte, lze ověřit pomocí ldd blib/arch/auto/DBD/Sybase/Sybase.so
. Jestli poskytuje cs_dt_crack_v2 lze zjistit pomocí nm -D SOUBOR_S_LIBCT_KNIHOVNOU | grep cs_dt_crack_v2
. Pokud by bylo všechno v pořádku, tak linker by všechny relokace symbolů, včetně cs_dt_crack_v2, měl být schopen vyřešit (ldd -r blib/arch/auto/DBD/Sybase/Sybase.so
).
ldd cesta_k/DBD-SYBASE-1.16/blib/arch/auto/DBD/Sybase/Sybase.sotak mi to ukáže toto :
DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase: not regular fileTak nevím jestli je problém už v samotné instalaci FreeTDS + freetds-devel nebo až někde dále.
Netuším, kde si nastavujete proměnnou SYBASE a na co ji používáte. To si budete muset vyřešit sám.
DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase: not regular file
Váš soubor cesta_k/DBD-SYBASE-1.16/blib/arch/auto/DBD/Sybase/Sybase.so je symbolický soubor, který odkazuje na DBD-MSSQL/DBD-Sybase-1.16/blib/arch/auto/DBD/Sybase? Spíše bych to viděl na překlepy.
Sybase.sonajdu v této cestě
/usr/lib/perl5/vendor_perl/auto/DBD/Sybasekdyž dám
ldd /usr/lib/perl5/vendor_perl/auto/DBD/Sybase/Sybase.sohodí mi to následující:
linux-vdso.so.1 => (0x00007fff4962f000) libct.so.4 => /lib64/libct.so.4 (0x00007fe8d0d1c000) libc.so.6 => /lib64/libc.so.6 (0x00007fe8d094f000) libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007fe8d0702000) libgnutls.so.28 => /lib64/libgnutls.so.28 (0x00007fe8d03c8000) libgcrypt.so.11 => /lib64/libgcrypt.so.11 (0x00007fe8d0147000) libdl.so.2 => /lib64/libdl.so.2 (0x00007fe8cff43000) libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007fe8cfd3e000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe8cfb22000) /lib64/ld-linux-x86-64.so.2 (0x00007fe8d1196000) libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007fe8cf83a000) libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007fe8cf607000) libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007fe8cf403000) libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007fe8cf1f5000) libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007fe8ceff1000) libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fe8cedd8000) libz.so.1 => /lib64/libz.so.1 (0x00007fe8cebc2000) libp11-kit.so.0 => /lib64/libp11-kit.so.0 (0x00007fe8ce893000) libtasn1.so.6 => /lib64/libtasn1.so.6 (0x00007fe8ce680000) libnettle.so.4 => /lib64/libnettle.so.4 (0x00007fe8ce44f000) libhogweed.so.2 => /lib64/libhogweed.so.2 (0x00007fe8ce228000) libgmp.so.10 => /lib64/libgmp.so.10 (0x00007fe8cdfb0000) libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fe8cdd89000) libffi.so.6 => /lib64/libffi.so.6 (0x00007fe8cdb81000) libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fe8cd91f000)
Jediný souborySybase.sonajdu v této cestě/usr/lib/perl5/vendor_perl/auto/DBD/Sybase
A taky v ./blib/arch/auto/DBD/Sybase/auto/DBD/Sybase/Sybase.so, tam, co jste pouštěl perl Makefile.PL a make.
když dámldd /usr/lib/perl5/vendor_perl/auto/DBD/Sybase/Sybase.so
Tím ale zkoumáte jinou Sybase.so, než kterou jste používal v tom selhaném testu. Možná tu, co jste tam narval z balíku pro RHEL-6.
linux-vdso.so.1 => (0x00007fff4962f000) libct.so.4 => /lib64/libct.so.4 (0x00007fe8d0d1c000)
Vidíte. Tak máte v systému dvě libct knihovny. Možná úplně jiné a nekompatibilní. Protože Sybase.so při překladu ze zdrojových kódů používala libct.so z /usr/local/freetds/lib.
Instalovat si do systému binární kód, který jsem „někde našel“, je hodně bezpečné.
Kdysi se někdo pokoušel zabalit DBD-Sybase pro Fedoru. S trochou umu by měl jít přeložit i pro RHEL.
Tiskni
Sdílej: