At 05:02 PM 4/13/2001, Michael Lemke wrote:
>With the latest postgres release that came lately with cygwin I made my
>very first attempt at writng an ESQL program (actually, at the moment it 
>is just something I dowloaded).  Now when I link it can't find sqlca:
>
>michael> gcc -I /usr/include/postgresql/  esql.c -lecpg -lpq
>/f/cygwin~1/tmp/ccbnOeiG.o(.text+0x203):esql.c: undefined reference to `sqlca'
>/f/cygwin~1/tmp/ccbnOeiG.o(.text+0x292):esql.c: undefined reference to `sqlca'
>collect2: ld returned 1 exit status
>
>ecpg made the declaration of sqlca 
>
>   extern struct sqlca sqlca;
>
>
>I recompiled postgres and skipped stripping of the libraries.  Then I find sqlca in
>ecpg.dll:
>
>michael> nm /usr/bin/ecpg.dll | grep sqlca
>c0586864 T _init_sqlca
>c0587000 D _sqlca
>c05870b0 d _sqlca_init
>
>but not in libecpg.a:
>
>michael> nm /usr/lib/libecpg.a | grep sqlca
>00000000 I __imp__sqlca
>00000000 I __imp__init_sqlca
>00000000 T _init_sqlca
>
>Any ideas?



Yes, you need to declare these symbols as those you want to import/export.  
Presumably, since the library does this already, you just need to find the
proper declaration of these symbols and make sure that all code that 
references them uses this.  Windows forces the notion of symbols being specified 
"exportable" by the use of an attribute.  You can find information about this in the 
email archives at least.



Larry Hall                              [EMAIL PROTECTED]
RFK Partners, Inc.                      http://www.rfk.com
118 Washington Street                   (508) 893-9779 - RFK Office
Holliston, MA 01746                     (508) 893-9889 - FAX


--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple

Reply via email to