SuperBuild command too long

I have tried for days to build ParaView SuperBuild using both nmake and ninja and with both I always get an error from the command line being too long. The solution seems to be using a response file but I can’t seem to get that to work. At present I’m trying to add the following commands to CMakeLists.txt

SET(CMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS 1)
SET(CMAKE_CXX_USE_RESPONSE_FILE_FOR_OBJECTS 1)

SET(CMAKE_C_RESPONSE_FILE_LINK_FLAG “@”)
SET(CMAKE_CXX_RESPONSE_FILE_LINK_FLAG “@”)

along with this one for ninja

SET(CMAKE_NINJA_FORCE_RESPONSE_FILE 1 CACHE INTERNAL “”)

I have tried setting these via CMAKE as well but at no point has that resulted in response files being utilized. Rather than continue to struggle I was hoping that perhaps I wasn’t the first person to run into this issue. If anyone has developed a solution to this issue I would be very grateful if you would share it with me.

I’m using

  • nmake Version 14.00.24210.0
  • ninja Version 1.9.0
  • CMake Version 3.11.0

Hi,

Try to run the super build from a very short path eg : c:/sb

If you do try to build ParaView without the super build, CMake will print a warning if some paths are getting too close to the windows path limit.

Thank you that did it.

Today I was running into the same issue: superbuild with some additional files of mine failing with some strange error message, but it turned out that the core of the issue was the command line that exceeded 8192 characters.

I can say that building the same software with “build” only (not “superbuild”) was ok, and also I can say that I did many superbuilds of “paraview derivatives” before, same setup, successfully.

And then I even managed today - after shortening the names of two classes (and their files) and going through all occurrencies of these names and fix the bugs etc. etc. - quite tedious!

But then I see that in the ParaView project you find filenames like

vtkHyperTreeGridNonOrientedVonNeumannSuperCursorLight.h

I am really jealous - I never did such a thing in my projects! So I am asking myself: Do these people maybe still have some secret weapon??

What I only learned in this thread is the CMAKE_ settings that are mentioned above: If I want to try them - how should I apply them? Just define them “globally” during project setup?

I did not find anything about them searching the CMAKE documentation!

A easy workaround for this is to build in a “close to root” directory.
C:/pv comes to mind.