[freetds] Segmentation fault on dbinit()
James K. Lowden
jklowden at freetds.org
Thu Oct 25 14:08:02 EDT 2007
Paul Andrews wrote:
> I can confirm that
> 1. dbinit is only called once.
> 2. fopen causes a segmentation fault
Hi Paul,
I'm starting to think this is an ABI problem.
> I sent the entire project over to a colleague who successfully debugged
> and ran the program on his 10.2 installation.
Good. That supports the notion that your code *and* FreeTDS are OK.
> I then decided to update to Suse 10.3 (complete format and new
> installation).
>
> Problem is still there.
...
> I have glibc 2.6.1-18.3, he has glibc 2.4-31.1
...
> Platform: Suse 10.2 / 10.3 using rpm's from OpenSuse.org
Did you build FreeTDS from source on the 10.3 box? If you're using
binaries compiled for another glibc, that could conceivably explain a
fault in fopen(3). In that case, though, it's the shared objects you'd be
interested in. Try ldd(1) on both system to see what your program is
using.
See also the gnu libc faq:
http://www.gnu.org/software/libc/FAQ.html#s-1.17,
The standard remedy to broken binaries is to build good ones. Then do
"make check" and watch everything work. ;-)
(You might try having your friend compile your test program and running it
on your machine. But that could only prove a negative; if it worked, it
wouldn't tell us much.)
If you built from scratch on your machine and get a failure in the first
unit test in fopen(3), I would be interested in seeing the backtrace. I
don't know what I could do about it, but it would be interesting!
HTH.
--jkl
More information about the FreeTDS
mailing list