You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Mark Raymond <ma...@raymonds.org.uk> on 2012/03/12 19:50:58 UTC

Compiling Subversion on Windows

Hi,

I've been attempting to compile Subversion on Windows (64-bit). I've been
able to solve most of the issues I had when compiling, but there's just one
file left that is refusing to compile - libsvn_ra-1.dll.
The build environment is Visual Studio 2008 on Windows 7 64-bit, using the
x64 Cross Tools Command Prompt.

I get the following error at the link stage:

libneon.lib(ne_openssl.obj) : error LNK2019: unresolved external symbol
SSL_SESSION_cmp referenced in function ne__negotiate_ssl
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_GetCurrentLineNumber referenced in function ne_xml_currentline
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_ErrorString referenced in function ne_xml_parse
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_GetErrorCode referenced in function ne_xml_parse
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_Parse referenced in function ne_xml_parse
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_ParserFree referenced in function ne_xml_destroy
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_SetXmlDeclHandler referenced in function ne_xml_create
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_SetUserData referenced in function ne_xml_create
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_SetCharacterDataHandler referenced in function ne_xml_create
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_SetElementHandler referenced in function ne_xml_create
libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
__imp_XML_ParserCreate referenced in function ne_xml_create
..\..\..\Release\subversion\libsvn_ra\libsvn_ra-1.dll : fatal error LNK1120:
11 unresolved externals

I've checked xml.lib (from expat, in apr-util), which is where I think these
symbols should be, and it contains the symbols but without the __imp_ at the
beginning.
I guess this is some issue with name mangling, but I don't really know how
to approach solving it!

Thanks,
Mark.


RE: Compiling Subversion on Windows

Posted by Mark Raymond <ma...@raymonds.org.uk>.
Thank you! This solved the XML linking issue.
The SSL_SESSION_cmd issue was solved by going back to openssl-0.9.8, as that
function was removed in openssl-1.0.0.
Mark.

From: kmradke@rockwellcollins.com [mailto:kmradke@rockwellcollins.com] 
Sent: 12 March 2012 19:55
To: Mark Raymond
Cc: users@subversion.apache.org
Subject: Re: Compiling Subversion on Windows

Mark, 

> I've been attempting to compile Subversion on Windows (64-bit). I've been
> able to solve most of the issues I had when compiling, but there's just
one
> file left that is refusing to compile - libsvn_ra-1.dll.
> The build environment is Visual Studio 2008 on Windows 7 64-bit, using the
> x64 Cross Tools Command Prompt.

You might want to check out the forums at http://www.apachehaus.com 
They build x64 versions of the subversion libraries with VS 2008. 

Looks like they ran into similar problems: 

http://www.apachehaus.com/forum/index.php?topic=143.0 

Adding /D XML_STATUS to EXPAT_FLAGS in neon\neon.mak line 57 
is what helped get rid of those import errors. 

Kevin R.


Re: Compiling Subversion on Windows

Posted by km...@rockwellcollins.com.
Mark,

> I've been attempting to compile Subversion on Windows (64-bit). I've 
been
> able to solve most of the issues I had when compiling, but there's just 
one
> file left that is refusing to compile - libsvn_ra-1.dll.
> The build environment is Visual Studio 2008 on Windows 7 64-bit, using 
the
> x64 Cross Tools Command Prompt.

You might want to check out the forums at http://www.apachehaus.com
They build x64 versions of the subversion libraries with VS 2008.

Looks like they ran into similar problems:

http://www.apachehaus.com/forum/index.php?topic=143.0

Adding /D XML_STATUS to EXPAT_FLAGS in neon\neon.mak line 57
is what helped get rid of those import errors.

Kevin R.

RE: Compiling Subversion on Windows

Posted by Brad Lemings <br...@rebit.com>.
The __imp_ prefixes mean that the linker is looking for a DLL.  For static linking, the XML_STATIC macro has to be defined in the code that links to Expat.

My solution for this problem: configure with the --without-neon option.  :)

> -----Original Message-----
> From: Mark Raymond [mailto:markr@raymonds.org.uk]
> Sent: Monday, March 12, 2012 12:51 PM
> To: users@subversion.apache.org
> Subject: Compiling Subversion on Windows
> 
> Hi,
> 
> I've been attempting to compile Subversion on Windows (64-bit). I've been
> able to solve most of the issues I had when compiling, but there's just one
> file left that is refusing to compile - libsvn_ra-1.dll.
> The build environment is Visual Studio 2008 on Windows 7 64-bit, using the
> x64 Cross Tools Command Prompt.
> 
> I get the following error at the link stage:
> 
> libneon.lib(ne_openssl.obj) : error LNK2019: unresolved external symbol
> SSL_SESSION_cmp referenced in function ne__negotiate_ssl
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_GetCurrentLineNumber referenced in function
> ne_xml_currentline
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_ErrorString referenced in function ne_xml_parse
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_GetErrorCode referenced in function ne_xml_parse
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_Parse referenced in function ne_xml_parse
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_ParserFree referenced in function ne_xml_destroy
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_SetXmlDeclHandler referenced in function ne_xml_create
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_SetUserData referenced in function ne_xml_create
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_SetCharacterDataHandler referenced in function
> ne_xml_create
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_SetElementHandler referenced in function ne_xml_create
> libneon.lib(ne_xml.obj) : error LNK2019: unresolved external symbol
> __imp_XML_ParserCreate referenced in function ne_xml_create
> ..\..\..\Release\subversion\libsvn_ra\libsvn_ra-1.dll : fatal error LNK1120:
> 11 unresolved externals
> 
> I've checked xml.lib (from expat, in apr-util), which is where I think these
> symbols should be, and it contains the symbols but without the __imp_ at
> the beginning.
> I guess this is some issue with name mangling, but I don't really know how to
> approach solving it!
> 
> Thanks,
> Mark.