Task #27 — Problem with Sybase on WindowsAttached to Project — OpenDBX
Last edited by Norbert Sendetzky (nose) - Monday, 22 Mar 2010, 10:16pm
Norbert: I am trying to use Sybase for first time in my life. I download the database, install it, and run some sql queries with it's client. After that I could successfully compile and install OpenDBX with it.
However, it does not work. When I try to run the tests I get a "segmentation fault". I display nothing in MinGW but the Windows windows saying there was an error in the module libsybasebackend-1.dll
I have libopendbxplus-1.dll, libopendbx-1.dll and libsybasebackend-1.dll in C:\WINDOWS\system32\
I am also sure I have this in $path: XXXX;C:\Sybase\OCS-15_0\dll;XXXX
I installed gdb in MinGW and did the following test:
$ gdb odbxtest.exe
GNU gdb (GDB) 7.0
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "mingw32".
For bug reporting instructions, please see:
Reading symbols from c:\mariano\openDBX\libopendbx-1.5.0\test/odbxtest.exe...done.
(gdb) set args -b sybase -h localhost -p 5000 -d Sybase -u sa -w ""
Starting program: c:\mariano\openDBX\libopendbx-1.5.0\test/odbxtest.exe -b sybase -h localhost -p 5000 -d Sybase -u sa -w ""
[New Thread 3624.0x504]
[New Thread 3624.0xad0]
Program received signal SIGSEGV, Segmentation fault.
0x6ae41ee2 in sybase_odbx_init (handle=0x3d4510, host=0x3d2d08 "localhost",
port=0x3d2d17 "5000") at sybase_basic.c:81
81 if( cs_config( aux->ctx, CS_SET, CS_USERDATA, (CS_VOID*) &aux, sizeof( void* ), NULL ) != CS_SUCCEED )
#0 0x6ae41ee2 in sybase_odbx_init (handle=0x3d4510,
host=0x3d2d08 "localhost", port=0x3d2d17 "5000") at sybase_basic.c:81
#1 0x00402e9b in odbx_init (handle=0x22ff30, backend=0x3d2cfc "sybase",
host=0x3d2d08 "localhost", port=0x3d2d17 "5000") at odbx.c:91
#2 0x00401fd5 in main (argc=13, argv=0x3d4570) at odbx-regression.c:146
As you can read there it is failing in sybase_basic.c:81 which has this line:
if( cs_config( aux->ctx, CS_SET, CS_USERDATA, (CS_VOID*) &aux, sizeof( void* ), NULL ) != CS_SUCCEED )
If you want, let me know what parameters or what can I print so that it helps.
I did various testing what might be the problem but didn't find any solution nor hint in the Sybase documentation - the usage of the function is exactly like in the docs. I leave your bug report open, maybe somebody else may have some hints in the future.
Thanks for trying Norbert anyway!
Maybe someone help us in the future.