CMake fails with build type "None" on Ubuntu 18.04

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

CMake fails with build type "None" on Ubuntu 18.04

Elvis Stansvik
Hi all,

Previously I had successfully used (VTK master from some months ago):

cmake \
    -DCMAKE_INSTALL_PREFIX=/opt/VTK9 \
    -DCMAKE_INSTALL_RPATH=/opt/VTK9/lib \
    -DVTK_Group_Qt=ON \
    -DVTK_QT_VERSION=5 \
    -DVTK_Group_Imaging=ON \
    -DVTK_Group_Views=ON \
    -DModule_vtkRenderingFreeTypeFontConfig=ON \
    -DVTK_WRAP_PYTHON=ON \
    -DVTK_PYTHON_VERSION=3 \
    -DPYTHON_EXECUTABLE=/usr/bin/python3 \
    -DPYTHON_INCLUDE_DIR=/usr/include/python3.6 \
    -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so \
    -DBUILD_TESTING=OFF \
    -DVTK_USE_SYSTEM_LIBRARIES=ON \
    -DVTK_USE_SYSTEM_LIBPROJ4=OFF \
    -DVTK_USE_SYSTEM_GL2PS=OFF \
    -DVTK_USE_SYSTEM_LIBHARU=OFF \
    -DVTK_USE_SYSTEM_GLEW=OFF \
    -DVTK_USE_SYSTEM_DOUBLECONVERSION=OFF \
    -DCMAKE_BUILD_TYPE=None \
    ..

Trying the same with current master (I know some stuff in the above
CMake line, like the *USE_SYSTEM* is not applicable anymore, but bear
with me), I get:

.
.
.
-- Looking for SO_REUSEADDR - found
CMake Error at ThirdParty/eigen/vtkeigen/CMakeLists.txt:28 (message):
  Unknown build type "None".  Allowed values are Debug, Release,
  RelWithDebInfo (case-insensitive).

This is due to a check in eigen's CMakeLists.txt which does not
include "None" as a valid type.

(Side note: This check is, rightfully IMHO, patched away by e.g. the
Ubuntu package for eigen3, allowing it to build with build type
"None", which is typically used for Debian packages).

But, I was just going to ask: Since I could successfully build VTK
master using build type "None" earlier, but not now after the new
module system was merged, something must have changed causing the
eigen3 CMakeLists.txt being parsed while previously it was not
(because eigen3 has had that check for a long time).

I have the full build log for the previously successful build if
that's of interest.

I have libeigen3-dev installed. But has something changed so that some
VTK module now requires the internal eigen3? Looking at e.g.
Filters/Statistics, it PRIVATE_DEPENDS on eigen3, which I guess means
it needs the internal one? But it seems to have needed that previously
too.. Did something change in how this is handled?

Calling for Ben's expertise here again I guess :)

FWIW, in my own build log from the successful build, I can see for example:

   -I/buildbot/b-vtk9/build/ThirdParty/eigen -I/usr/include/eigen3

so it was pointing to both the internal and the system-wide one.

Perhaps the old build system way was broken, and I was just lucky this worked?

Elvis
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

VTK - Dev mailing list
On Fri, Jan 11, 2019 at 20:30:38 +0100, Elvis Stansvik wrote:
> cmake \
>     -DCMAKE_INSTALL_PREFIX=/opt/VTK9 \
>     -DCMAKE_INSTALL_RPATH=/opt/VTK9/lib \

This should now be:

>     -DVTK_Group_Qt=ON \

    VTK_GROUP_ENABLE_Qt=YES

>     -DVTK_QT_VERSION=5 \

Unnecessary; Qt4 is no longer supported.

>     -DVTK_Group_Imaging=ON \
>     -DVTK_Group_Views=ON \

    VTK_GROUP_ENABLE_Imaging=YES
    VTK_GROUP_ENABLE_Views=YES

>     -DModule_vtkRenderingFreeTypeFontConfig=ON \

    VTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES

>     -DVTK_WRAP_PYTHON=ON \
>     -DVTK_PYTHON_VERSION=3 \
>     -DPYTHON_EXECUTABLE=/usr/bin/python3 \
>     -DPYTHON_INCLUDE_DIR=/usr/include/python3.6 \
>     -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so \

I'd try not setting these; `FindPython3` should Just Work™ now.

>     -DBUILD_TESTING=OFF \

    VTK_BUILD_TESTING=OFF

>     -DVTK_USE_SYSTEM_LIBRARIES=ON \

    VTK_USE_EXTERNAL=ON

>     -DVTK_USE_SYSTEM_LIBPROJ4=OFF \
>     -DVTK_USE_SYSTEM_GL2PS=OFF \
>     -DVTK_USE_SYSTEM_LIBHARU=OFF \
>     -DVTK_USE_SYSTEM_GLEW=OFF \
>     -DVTK_USE_SYSTEM_DOUBLECONVERSION=OFF \

    VTK_MODULE_USE_EXTERNAL_VTK_libproj4=ON
    VTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON
    VTK_MODULE_USE_EXTERNAL_VTK_libharu=ON
    VTK_MODULE_USE_EXTERNAL_VTK_glew=ON
    VTK_MODULE_USE_EXTERNAL_VTK_doubleconversion=ON

Though looking, I see that these also need the `::` -> `_`
transformation done first. MR up in a bit.

> Trying the same with current master (I know some stuff in the above
> CMake line, like the *USE_SYSTEM* is not applicable anymore, but bear
> with me), I get:
>
> .
> .
> .
> -- Looking for SO_REUSEADDR - found
> CMake Error at ThirdParty/eigen/vtkeigen/CMakeLists.txt:28 (message):
>   Unknown build type "None".  Allowed values are Debug, Release,
>   RelWithDebInfo (case-insensitive).
>
> This is due to a check in eigen's CMakeLists.txt which does not
> include "None" as a valid type.
>
> (Side note: This check is, rightfully IMHO, patched away by e.g. the
> Ubuntu package for eigen3, allowing it to build with build type
> "None", which is typically used for Debian packages).
>
> But, I was just going to ask: Since I could successfully build VTK
> master using build type "None" earlier, but not now after the new
> module system was merged, something must have changed causing the
> eigen3 CMakeLists.txt being parsed while previously it was not
> (because eigen3 has had that check for a long time).

I probably missed nop-ing out a section of CMake. The code to neuter is
here:

    https://gitlab.kitware.com/third-party/eigen/blob/for/vtk/CMakeLists.txt#L24

> I have the full build log for the previously successful build if
> that's of interest.
>
> I have libeigen3-dev installed. But has something changed so that some
> VTK module now requires the internal eigen3? Looking at e.g.
> Filters/Statistics, it PRIVATE_DEPENDS on eigen3, which I guess means
> it needs the internal one? But it seems to have needed that previously
> too.. Did something change in how this is handled?

No, it just needs the eigen3 module which can be provided by VTK itself
or by finding another version.

> Calling for Ben's expertise here again I guess :)
>
> FWIW, in my own build log from the successful build, I can see for example:
>
>    -I/buildbot/b-vtk9/build/ThirdParty/eigen -I/usr/include/eigen3
>
> so it was pointing to both the internal and the system-wide one.
>
> Perhaps the old build system way was broken, and I was just lucky this worked?

It needed to point internally to get the `vtk_eigen` header (which
should always be used).

--Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

VTK - Dev mailing list
On Fri, Jan 11, 2019 at 15:28:43 -0500, Ben Boeckel wrote:
>     VTK_MODULE_USE_EXTERNAL_VTK_libproj4=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_libharu=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_glew=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_doubleconversion=ON
>
> Though looking, I see that these also need the `::` -> `_`
> transformation done first. MR up in a bit.

Nevermind, was looking at an old checkout. It is already done :) .

--Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

Elvis Stansvik
In reply to this post by VTK - Dev mailing list
Den fre 11 jan. 2019 kl 21:28 skrev Ben Boeckel <[hidden email]>:

>
> On Fri, Jan 11, 2019 at 20:30:38 +0100, Elvis Stansvik wrote:
> > cmake \
> >     -DCMAKE_INSTALL_PREFIX=/opt/VTK9 \
> >     -DCMAKE_INSTALL_RPATH=/opt/VTK9/lib \
>
> This should now be:
>
> >     -DVTK_Group_Qt=ON \
>
>     VTK_GROUP_ENABLE_Qt=YES
>
> >     -DVTK_QT_VERSION=5 \
>
> Unnecessary; Qt4 is no longer supported.
>
> >     -DVTK_Group_Imaging=ON \
> >     -DVTK_Group_Views=ON \
>
>     VTK_GROUP_ENABLE_Imaging=YES
>     VTK_GROUP_ENABLE_Views=YES
>
> >     -DModule_vtkRenderingFreeTypeFontConfig=ON \
>
>     VTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES
>
> >     -DVTK_WRAP_PYTHON=ON \
> >     -DVTK_PYTHON_VERSION=3 \
> >     -DPYTHON_EXECUTABLE=/usr/bin/python3 \
> >     -DPYTHON_INCLUDE_DIR=/usr/include/python3.6 \
> >     -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so \
>
> I'd try not setting these; `FindPython3` should Just Work™ now.
>
> >     -DBUILD_TESTING=OFF \
>
>     VTK_BUILD_TESTING=OFF
>
> >     -DVTK_USE_SYSTEM_LIBRARIES=ON \
>
>     VTK_USE_EXTERNAL=ON
>
> >     -DVTK_USE_SYSTEM_LIBPROJ4=OFF \
> >     -DVTK_USE_SYSTEM_GL2PS=OFF \
> >     -DVTK_USE_SYSTEM_LIBHARU=OFF \
> >     -DVTK_USE_SYSTEM_GLEW=OFF \
> >     -DVTK_USE_SYSTEM_DOUBLECONVERSION=OFF \
>
>     VTK_MODULE_USE_EXTERNAL_VTK_libproj4=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_libharu=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_glew=ON
>     VTK_MODULE_USE_EXTERNAL_VTK_doubleconversion=ON
>
> Though looking, I see that these also need the `::` -> `_`
> transformation done first. MR up in a bit.

Thanks a lot of assembling these porting hints. Much appreciated.

>
> > Trying the same with current master (I know some stuff in the above
> > CMake line, like the *USE_SYSTEM* is not applicable anymore, but bear
> > with me), I get:
> >
> > .
> > .
> > .
> > -- Looking for SO_REUSEADDR - found
> > CMake Error at ThirdParty/eigen/vtkeigen/CMakeLists.txt:28 (message):
> >   Unknown build type "None".  Allowed values are Debug, Release,
> >   RelWithDebInfo (case-insensitive).
> >
> > This is due to a check in eigen's CMakeLists.txt which does not
> > include "None" as a valid type.
> >
> > (Side note: This check is, rightfully IMHO, patched away by e.g. the
> > Ubuntu package for eigen3, allowing it to build with build type
> > "None", which is typically used for Debian packages).
> >
> > But, I was just going to ask: Since I could successfully build VTK
> > master using build type "None" earlier, but not now after the new
> > module system was merged, something must have changed causing the
> > eigen3 CMakeLists.txt being parsed while previously it was not
> > (because eigen3 has had that check for a long time).
>
> I probably missed nop-ing out a section of CMake. The code to neuter is
> here:
>
>     https://gitlab.kitware.com/third-party/eigen/blob/for/vtk/CMakeLists.txt#L24

Yep, I know I can fix it by just removing that check (that's what the
Debian package does:
https://salsa.debian.org/science-team/eigen3/blob/master/debian/patches/02_remove_buildtype_check.patch).

I was just wondering how come the old build I did worked? Why didn't
it come across those same lines and bail out?

>
> > I have the full build log for the previously successful build if
> > that's of interest.
> >
> > I have libeigen3-dev installed. But has something changed so that some
> > VTK module now requires the internal eigen3? Looking at e.g.
> > Filters/Statistics, it PRIVATE_DEPENDS on eigen3, which I guess means
> > it needs the internal one? But it seems to have needed that previously
> > too.. Did something change in how this is handled?
>
> No, it just needs the eigen3 module which can be provided by VTK itself
> or by finding another version.
>
> > Calling for Ben's expertise here again I guess :)
> >
> > FWIW, in my own build log from the successful build, I can see for example:
> >
> >    -I/buildbot/b-vtk9/build/ThirdParty/eigen -I/usr/include/eigen3
> >
> > so it was pointing to both the internal and the system-wide one.
> >
> > Perhaps the old build system way was broken, and I was just lucky this worked?
>
> It needed to point internally to get the `vtk_eigen` header (which
> should always be used).

Ah yes, of course. So nothing funny about those two flags coexisting.

Elvis

>
> --Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

VTK - Dev mailing list
On Fri, Jan 11, 2019 at 21:49:31 +0100, Elvis Stansvik wrote:

> Den fre 11 jan. 2019 kl 21:28 skrev Ben Boeckel <[hidden email]>:
> > I probably missed nop-ing out a section of CMake. The code to neuter is
> > here:
> >
> >     https://gitlab.kitware.com/third-party/eigen/blob/for/vtk/CMakeLists.txt#L24
>
> Yep, I know I can fix it by just removing that check (that's what the
> Debian package does:
> https://salsa.debian.org/science-team/eigen3/blob/master/debian/patches/02_remove_buildtype_check.patch).
>
> I was just wondering how come the old build I did worked? Why didn't
> it come across those same lines and bail out?

Hmm, not sure. That block has always been active AFAICS. Maybe `eigen`
wasn't being built before?

--Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

Elvis Stansvik
Den fre 11 jan. 2019 kl 22:04 skrev Ben Boeckel <[hidden email]>:

>
> On Fri, Jan 11, 2019 at 21:49:31 +0100, Elvis Stansvik wrote:
> > Den fre 11 jan. 2019 kl 21:28 skrev Ben Boeckel <[hidden email]>:
> > > I probably missed nop-ing out a section of CMake. The code to neuter is
> > > here:
> > >
> > >     https://gitlab.kitware.com/third-party/eigen/blob/for/vtk/CMakeLists.txt#L24
> >
> > Yep, I know I can fix it by just removing that check (that's what the
> > Debian package does:
> > https://salsa.debian.org/science-team/eigen3/blob/master/debian/patches/02_remove_buildtype_check.patch).
> >
> > I was just wondering how come the old build I did worked? Why didn't
> > it come across those same lines and bail out?
>
> Hmm, not sure. That block has always been active AFAICS. Maybe `eigen`
> wasn't being built before?

Now following your suggestions with an amended CMake line:

[estan@newton VTK-build]$ cmake \

> -DCMAKE_INSTALL_PREFIX=/home/estan/orexplore/VTK-inst \
> -DCMAKE_INSTALL_RPATH=/home/estan/orexplore/VTK-inst/lib \
> -DVTK_GROUP_ENABLE_Qt=YES \
> -DVTK_GROUP_ENABLE_Imaging=YES \
> -DVTK_GROUP_ENABLE__Views=YES \
> -DVTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES \
> -DVTK_BUILD_TESTING=ON \
> -DVTK_USE_EXTERNAL=YES \
> -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON \
> -DCMAKE_BUILD_TYPE=None \
> ../VTK
-- The C compiler identification is GNU 7.3.0
-- The CXX compiler identification is GNU 7.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test HAVE_GCC_ERROR_RETURN_TYPE
-- Performing Test HAVE_GCC_ERROR_RETURN_TYPE - Success
-- Performing Test Support for 64 bit file systems
-- Performing Test Support for 64 bit file systems - Success
CMake Error at CMake/vtkModule.cmake:811 (message):
  The VTK::IOExportGL2PS module requires the disabled module VTK::IOParallel.
Call Stack (most recent call first):
  CMakeLists.txt:197 (vtk_module_scan)


-- Configuring incomplete, errors occurred!
See also "/home/estan/orexplore/VTK-build/CMakeFiles/CMakeOutput.log".
[estan@newton VTK-build]$

I think I'm now past the trouble with eigen3, due to using the correct
VTK_USE_EXTERNAL (so it uses the system eigen), thanks!

But how about this error above? How can I find out why it disabled the
IOParallel module?

Elvis

>
> --Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

Elvis Stansvik
Den fre 11 jan. 2019 kl 22:30 skrev Elvis Stansvik
<[hidden email]>:

>
> Den fre 11 jan. 2019 kl 22:04 skrev Ben Boeckel <[hidden email]>:
> >
> > On Fri, Jan 11, 2019 at 21:49:31 +0100, Elvis Stansvik wrote:
> > > Den fre 11 jan. 2019 kl 21:28 skrev Ben Boeckel <[hidden email]>:
> > > > I probably missed nop-ing out a section of CMake. The code to neuter is
> > > > here:
> > > >
> > > >     https://gitlab.kitware.com/third-party/eigen/blob/for/vtk/CMakeLists.txt#L24
> > >
> > > Yep, I know I can fix it by just removing that check (that's what the
> > > Debian package does:
> > > https://salsa.debian.org/science-team/eigen3/blob/master/debian/patches/02_remove_buildtype_check.patch).
> > >
> > > I was just wondering how come the old build I did worked? Why didn't
> > > it come across those same lines and bail out?
> >
> > Hmm, not sure. That block has always been active AFAICS. Maybe `eigen`
> > wasn't being built before?
>
> Now following your suggestions with an amended CMake line:
>
> [estan@newton VTK-build]$ cmake \
> > -DCMAKE_INSTALL_PREFIX=/home/estan/orexplore/VTK-inst \
> > -DCMAKE_INSTALL_RPATH=/home/estan/orexplore/VTK-inst/lib \
> > -DVTK_GROUP_ENABLE_Qt=YES \
> > -DVTK_GROUP_ENABLE_Imaging=YES \
> > -DVTK_GROUP_ENABLE__Views=YES \
> > -DVTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES \
> > -DVTK_BUILD_TESTING=ON \
> > -DVTK_USE_EXTERNAL=YES \
> > -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON \
> > -DCMAKE_BUILD_TYPE=None \
> > ../VTK
> -- The C compiler identification is GNU 7.3.0
> -- The CXX compiler identification is GNU 7.3.0
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Performing Test HAVE_GCC_ERROR_RETURN_TYPE
> -- Performing Test HAVE_GCC_ERROR_RETURN_TYPE - Success
> -- Performing Test Support for 64 bit file systems
> -- Performing Test Support for 64 bit file systems - Success
> CMake Error at CMake/vtkModule.cmake:811 (message):
>   The VTK::IOExportGL2PS module requires the disabled module VTK::IOParallel.
> Call Stack (most recent call first):
>   CMakeLists.txt:197 (vtk_module_scan)
>
>
> -- Configuring incomplete, errors occurred!
> See also "/home/estan/orexplore/VTK-build/CMakeFiles/CMakeOutput.log".
> [estan@newton VTK-build]$
>
> I think I'm now past the trouble with eigen3, due to using the correct
> VTK_USE_EXTERNAL (so it uses the system eigen), thanks!
>
> But how about this error above? How can I find out why it disabled the
> IOParallel module?

Hm, I realized I accidentally enabled testing when updating the flags.
When I corrected it to -DVTK_BUILD_TESTING=OFF, the CMake got much
further. Strange...

Anyway, I'll probably get this working now.

Elvis

>
> Elvis
>
> >
> > --Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

Elvis Stansvik
Den fre 11 jan. 2019 kl 22:33 skrev Elvis Stansvik
<[hidden email]>:

>
> Den fre 11 jan. 2019 kl 22:30 skrev Elvis Stansvik
> <[hidden email]>:
> >
> > Den fre 11 jan. 2019 kl 22:04 skrev Ben Boeckel <[hidden email]>:
> > >
> > > On Fri, Jan 11, 2019 at 21:49:31 +0100, Elvis Stansvik wrote:
> > > > Den fre 11 jan. 2019 kl 21:28 skrev Ben Boeckel <[hidden email]>:
> > > > > I probably missed nop-ing out a section of CMake. The code to neuter is
> > > > > here:
> > > > >
> > > > >     https://gitlab.kitware.com/third-party/eigen/blob/for/vtk/CMakeLists.txt#L24
> > > >
> > > > Yep, I know I can fix it by just removing that check (that's what the
> > > > Debian package does:
> > > > https://salsa.debian.org/science-team/eigen3/blob/master/debian/patches/02_remove_buildtype_check.patch).
> > > >
> > > > I was just wondering how come the old build I did worked? Why didn't
> > > > it come across those same lines and bail out?
> > >
> > > Hmm, not sure. That block has always been active AFAICS. Maybe `eigen`
> > > wasn't being built before?
> >
> > Now following your suggestions with an amended CMake line:
> >
> > [estan@newton VTK-build]$ cmake \
> > > -DCMAKE_INSTALL_PREFIX=/home/estan/orexplore/VTK-inst \
> > > -DCMAKE_INSTALL_RPATH=/home/estan/orexplore/VTK-inst/lib \
> > > -DVTK_GROUP_ENABLE_Qt=YES \
> > > -DVTK_GROUP_ENABLE_Imaging=YES \
> > > -DVTK_GROUP_ENABLE__Views=YES \
> > > -DVTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES \
> > > -DVTK_BUILD_TESTING=ON \
> > > -DVTK_USE_EXTERNAL=YES \
> > > -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON \
> > > -DCMAKE_BUILD_TYPE=None \
> > > ../VTK
> > -- The C compiler identification is GNU 7.3.0
> > -- The CXX compiler identification is GNU 7.3.0
> > -- Check for working C compiler: /usr/bin/cc
> > -- Check for working C compiler: /usr/bin/cc -- works
> > -- Detecting C compiler ABI info
> > -- Detecting C compiler ABI info - done
> > -- Detecting C compile features
> > -- Detecting C compile features - done
> > -- Check for working CXX compiler: /usr/bin/c++
> > -- Check for working CXX compiler: /usr/bin/c++ -- works
> > -- Detecting CXX compiler ABI info
> > -- Detecting CXX compiler ABI info - done
> > -- Detecting CXX compile features
> > -- Detecting CXX compile features - done
> > -- Performing Test HAVE_GCC_ERROR_RETURN_TYPE
> > -- Performing Test HAVE_GCC_ERROR_RETURN_TYPE - Success
> > -- Performing Test Support for 64 bit file systems
> > -- Performing Test Support for 64 bit file systems - Success
> > CMake Error at CMake/vtkModule.cmake:811 (message):
> >   The VTK::IOExportGL2PS module requires the disabled module VTK::IOParallel.
> > Call Stack (most recent call first):
> >   CMakeLists.txt:197 (vtk_module_scan)
> >
> >
> > -- Configuring incomplete, errors occurred!
> > See also "/home/estan/orexplore/VTK-build/CMakeFiles/CMakeOutput.log".
> > [estan@newton VTK-build]$
> >
> > I think I'm now past the trouble with eigen3, due to using the correct
> > VTK_USE_EXTERNAL (so it uses the system eigen), thanks!
> >
> > But how about this error above? How can I find out why it disabled the
> > IOParallel module?
>
> Hm, I realized I accidentally enabled testing when updating the flags.
> When I corrected it to -DVTK_BUILD_TESTING=OFF, the CMake got much
> further. Strange...
>
> Anyway, I'll probably get this working now.

The golden line for me:

cmake \
    -DCMAKE_INSTALL_PREFIX=/home/estan/orexplore/VTK-inst \
    -DCMAKE_INSTALL_RPATH=/home/estan/orexplore/VTK-inst/lib \
    -DVTK_GROUP_ENABLE_Qt=YES \
    -DVTK_GROUP_ENABLE_Imaging=YES \
    -DVTK_GROUP_ENABLE_Views=YES \
    -DVTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES \
    -DVTK_BUILD_TESTING=OFF \
    -DVTK_USE_EXTERNAL=YES \
    -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=OFF \
    -DVTK_MODULE_USE_EXTERNAL_VTK_libharu=OFF \
    -DCMAKE_BUILD_TYPE=None \
    ../VTK

I had made a bunch of mistakes earlier. This line worked fine, and
gl2ps and libharu were the only ones I needed to use the internal ones
(due to slightly too old versions in Ubuntu 18.04).

Many thanks Ben.

Elvis

>
> Elvis
>
> >
> > Elvis
> >
> > >
> > > --Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

VTK - Dev mailing list
On Fri, Jan 11, 2019 at 22:39:21 +0100, Elvis Stansvik wrote:
> Den fre 11 jan. 2019 kl 22:33 skrev Elvis Stansvik
> > Hm, I realized I accidentally enabled testing when updating the flags.
> > When I corrected it to -DVTK_BUILD_TESTING=OFF, the CMake got much
> > further. Strange...

`VTK_BUILD_TESTING=ON` says "build all testing" and some module's tests
require IOParallel. But, IOParallel is gated by `VTK_USE_MPI` and
forcefully disabled without it, so it errors saying a required module
needs a module not allowed to build. There is also
`VTK_BUILD_TESTING=WANT` which builds as much testing as it can without
the disabled modules. In the long run, making these things
`TEST_OPTIONAL_DEPENDS` instead and skipping the relevant individual
tests is better.

> > Anyway, I'll probably get this working now.
>
> The golden line for me:
>
> cmake \
>     -DCMAKE_INSTALL_PREFIX=/home/estan/orexplore/VTK-inst \
>     -DCMAKE_INSTALL_RPATH=/home/estan/orexplore/VTK-inst/lib \
>     -DVTK_GROUP_ENABLE_Qt=YES \
>     -DVTK_GROUP_ENABLE_Imaging=YES \
>     -DVTK_GROUP_ENABLE_Views=YES \
>     -DVTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES \
>     -DVTK_BUILD_TESTING=OFF \
>     -DVTK_USE_EXTERNAL=YES \
>     -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=OFF \
>     -DVTK_MODULE_USE_EXTERNAL_VTK_libharu=OFF \
>     -DCMAKE_BUILD_TYPE=None \
>     ../VTK
>
> I had made a bunch of mistakes earlier. This line worked fine, and
> gl2ps and libharu were the only ones I needed to use the internal ones
> (due to slightly too old versions in Ubuntu 18.04).

These two are actually patched for API changes and have pending PRs for
them (mentioned in the CMake code), so upstream releases aren't ready
anyways.

--Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers

Reply | Threaded
Open this post in threaded view
|

Re: CMake fails with build type "None" on Ubuntu 18.04

Elvis Stansvik
Den fre 11 jan. 2019 kl 22:55 skrev Ben Boeckel <[hidden email]>:

>
> On Fri, Jan 11, 2019 at 22:39:21 +0100, Elvis Stansvik wrote:
> > Den fre 11 jan. 2019 kl 22:33 skrev Elvis Stansvik
> > > Hm, I realized I accidentally enabled testing when updating the flags.
> > > When I corrected it to -DVTK_BUILD_TESTING=OFF, the CMake got much
> > > further. Strange...
>
> `VTK_BUILD_TESTING=ON` says "build all testing" and some module's tests
> require IOParallel. But, IOParallel is gated by `VTK_USE_MPI` and
> forcefully disabled without it, so it errors saying a required module
> needs a module not allowed to build. There is also
> `VTK_BUILD_TESTING=WANT` which builds as much testing as it can without
> the disabled modules. In the long run, making these things
> `TEST_OPTIONAL_DEPENDS` instead and skipping the relevant individual
> tests is better.

Ah, thanks for the thorough clarification.

>
> > > Anyway, I'll probably get this working now.
> >
> > The golden line for me:
> >
> > cmake \
> >     -DCMAKE_INSTALL_PREFIX=/home/estan/orexplore/VTK-inst \
> >     -DCMAKE_INSTALL_RPATH=/home/estan/orexplore/VTK-inst/lib \
> >     -DVTK_GROUP_ENABLE_Qt=YES \
> >     -DVTK_GROUP_ENABLE_Imaging=YES \
> >     -DVTK_GROUP_ENABLE_Views=YES \
> >     -DVTK_MODULE_ENABLE_VTK_RenderingFreeTypeFontConfig=YES \
> >     -DVTK_BUILD_TESTING=OFF \
> >     -DVTK_USE_EXTERNAL=YES \
> >     -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=OFF \
> >     -DVTK_MODULE_USE_EXTERNAL_VTK_libharu=OFF \
> >     -DCMAKE_BUILD_TYPE=None \
> >     ../VTK
> >
> > I had made a bunch of mistakes earlier. This line worked fine, and
> > gl2ps and libharu were the only ones I needed to use the internal ones
> > (due to slightly too old versions in Ubuntu 18.04).
>
> These two are actually patched for API changes and have pending PRs for
> them (mentioned in the CMake code), so upstream releases aren't ready
> anyways.

Ah, OK. Then I really am using as much from the system as I can :)

Elvis

>
> --Ben
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Search the list archives at: http://markmail.org/search/?q=vtk-developers

Follow this link to subscribe/unsubscribe:
https://vtk.org/mailman/listinfo/vtk-developers