[pdal] Compiling with Visual Studio 2015

Kristian Evers kreve at sdfe.dk
Tue Jan 5 07:33:26 PST 2016


Good suggestion, Andrew.

Here’s what I’ve found so far. cstdint is including stdint.h. As C:\OSGeo4W64\include is one of the include-directories, the stdint.h in that folder is including instead of the visual studio version of the same file. The build proceeds when I rename the osgeo4w-version to something else. So that would be the culprit.

Now I need to figure out why the problem shows up in the first place. The definitions in the osgeo4w stdint.h should be ignored when _MCS_VER >= 1600. I’ll dig a bit deeper and hopefully figure out what’s happening. Might also be a missing definition in boost/ctdint…

Kristian

Fra: Andrew Bell [mailto:andrew.bell.ia at gmail.com]
Sendt: tirsdag 05. januar 2016 16:00
Til: Kristian Evers
Emne: Re: [pdal] Compiling with Visual Studio 2015

On Tue, Jan 5, 2016 at 8:20 AM, Kristian Evers <kreve at sdfe.dk<mailto:kreve at sdfe.dk>> wrote:
Hello,

I am trying to build PDAL with Visual Studio 2015 Community version. I am aware that it is recommended to build with VS2012, but since there’s a newer and fully featured version freely available I believe that’s the better choice.
 So far I haven’t been able to get build the code. I’ve been following the build howto on the pdal website (http://www.pdal.io/compilation/windows.html). Unfortunately it is a bit outdated but despite a few discrepancies in the text I’ve managed to create a VS2015 solution with cmake. When trying to build the solution I get a lot of errors related to C++11 data types (int32_t etc.). Here’s an example:

13>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdint(38): error C2039: 'int32_t': is not a member of '`global namespace''
13>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\cstdint(38): error C2873: 'int32_t': symbol cannot be used in a using-declaration

http://stackoverflow.com/questions/23907008/compilation-error-error-c2039-clock-t-is-not-a-member-of-global-namespace

I assume that this is the same issue.  Some other file is getting included that's defining int32_t that's conflicting with cstdint.  You could run the preprocessor on the file without compilation and then inspect the output to see what's going on.

--
Andrew Bell
andrew.bell.ia at gmail.com<mailto:andrew.bell.ia at gmail.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pdal/attachments/20160105/3f2386b3/attachment.html>


More information about the pdal mailing list