Message: expat on Win: memmove does not exist on this platform, nor is a substitute available Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question expat on Win: memmove does not exist on this platform, nor is a substitute available 

Forum: Installation and Configuration
Date: 27 Jun, 2013
From: Mojca Miklavec <Mojca Miklavec>

I'm trying to compile Geant4.9.5.p02 on Windows XP with CMake & MinGW. One weird error that I get is

  #error: memmove does not exist on this platform, nor is a substitute available

being thrown from the following chunk of code in source/externals/expat/src/xmlparse.cc:

  /* Handle the case where memmove() doesn't exist. */
  #ifndef HAVE_MEMMOVE
  #ifdef HAVE_BCOPY
  #define memmove(d,s,l) bcopy((s),(d),(l))
  #else
  #error memmove does not exist on this platform, nor is a substitute available
  #endif /* HAVE_BCOPY */
  #endif /* HAVE_MEMMOVE */

There is source/externals/expat/src/winconfig.h which defines HAVE_MEMMOVE (/* Windows has memmove() available. */), but that file is only included from xmlparse.cc "#ifdef COMPILED_FROM_DSP" and that variable is only defined for MSVC (source/externals/expat/sources.cmake).

What would be the proper way to define HAVE_MEMMOVE in case of non-msvc compilers on Windows?

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Warning: Re: expat on Win: memmove does not exist on this platform, nor is a substitute available   (Gabriele Cosmo - 28 Jun, 2013)
 Add Message Add Message
to: "expat on Win: memmove does not exist on this platform, nor is a substitute available"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]