Symbols missing from static library

Joe Orton joe at manyfish.co.uk
Mon Sep 14 04:16:50 EDT 2009


On Mon, Sep 14, 2009 at 01:04:29AM -0500, Robert Dailey wrote:
> On Sun, Sep 13, 2009 at 10:52 PM, Robert Dailey <rcdailey at gmail.com> wrote:
> Warning 2 warning LNK4217: locally defined symbol _XML_GetCurrentLineNumber
> imported in function _ne_xml_currentline libneon.lib subversion
...

I don't know what these warnings mean, sorry.

> Error 13 error LNK2019: unresolved external symbol _inet_aton referenced in
> function _ne_iaddr_parse libneon.lib subversion
> Error 14 error LNK2019: unresolved external symbol __imp__XML_StopParser
> referenced in function _entity_declaration libneon.lib subversion

Hmmm, I guess you're now using neon 0.29.0 rather than 0.28.6?  What 
version of expat are you using? Can you check whether it has an 
XML_StopParser() function?

It looks like inet_aton() isn't available on Windows - could you try 
this patch?

Index: src/ne_socket.c
===================================================================
--- src/ne_socket.c	(revision 1736)
+++ src/ne_socket.c	(working copy)
@@ -1085,9 +1085,18 @@
         return NULL;
     }
 
+#ifdef WIN32
+    /* inet_addr() is broken because INADDR_NONE is a valid
+     * broadcast address, so only use it on Windows. */
+    a.s_addr = inet_addr(addr);
+    if (a.s_addr == INADDR_NONE) {
+        return NULL;
+    }
+#else
     if (inet_aton(addr, &a) == 0) {
         return NULL;
     }
+#endif
     
     return ne_iaddr_make(ne_iaddr_ipv4, (unsigned char *)&a.s_addr);
 #endif



More information about the neon mailing list