[Liblas-devel] libLAS and VS2010
Howard Butler
hobu.inc at gmail.com
Mon Jan 10 11:39:01 EST 2011
On Jan 10, 2011, at 10:26 AM, esteban70 at libero.it wrote:
> Finally I was able to use libLAS under VS2010.
>
> Those are some of the problem that I had to resolve in order to use the
> library.
>
> It is necessary to specify LAS_DLL_IMPORT in the C++ preprocessor definition
> otherwise LAS_DLL is undefined and including a libLAS .hpp causes a lot of
> errors.
>
> This is the code in export.hpp:
>
> #if defined(LAS_DLL_EXPORT)
> # define LAS_DLL __declspec(dllexport)
> #elif defined(LAS_DLL_IMPORT)
> # define LAS_DLL __declspec(dllimport)
>
> Isn't better to change the code into
>
> #if defined(BUILD_LAS_DLL)
> # define LAS_DLL __declspec(dllexport)
> #else
> # define LAS_DLL __declspec(dllimport)
> #endif
>
> so that if BUILD_LAS_DLL isn't defined during compilation, then it is intended
> to be used by the application?
I'll try to tighten this up. Thanks for the report.
>
> Another problem is that libLAS doesn't compile in presence of min() and max()
> macros. Now that libLAS depends on boost maybe it can adopt the boost
> guidelines to avoid inappropriate macro substitution (http://www.boost.
> org/development/requirements.html). I had to insert a lot of () and
> BOOST_PREVENT_MACRO_SUBSTITUTION to make it compile.
Can you provide some example compiler warning/error output about this? I haven't ever had any complaint about this using MSVC 2010 express, however, I only use the Makefiles target, not the project build. Are the macros coming from libLAS or one of its dependencies?
Howard
More information about the Liblas-devel
mailing list