[freetds] don't understand change

James K. Lowden jklowden at freetds.org
Thu Dec 27 10:51:54 EST 2007


Frediano Ziglio wrote:
> > I think 1.15 is OK.  
> 
> Mainly in my environment it didn't compile. I think it's cause
> 
> $ nm .libs/libct.so | grep STD
> 000000000003efa0 r STD_DATETIME_FMT
> 
> so the symbol is local

In C, file-scope objects have external linkage.  Is it possible you're
compiling the file as C++?  

I remember from reading the ANSI C rationale that extern was the source of
some difficulty because there was more than one reasonable, well
established practice.  Some linkers want:

	file1.c: 	char value[] = "hi";
	file2.c:	extern char value[];

others want:

	file1.c: 	extern char value[] = "hi";
	file2.c:	extern char value[];

I chose #1.  You might try #2 (add extern to the definition).  

Funny we haven't bumped into this before.  

Regards, 

--jkl


More information about the FreeTDS mailing list