Personal tools
You are here: Home Forum Install & build Build instructions for Windows (and/or maybe Linux)

Build instructions for Windows (and/or maybe Linux)

Up to Install & build

Build instructions for Windows (and/or maybe Linux)

Posted by Dmitrii Semikin at July 06. 2020

Hello,

 

I am interested in building Salome from sources on windows (or maybe on Linux, see below). More specifically I am interested in building Geometry and Mesh modules and all their dependencies.

 

So far, I found the following things:

- This thread, which seems to be somewhat outdated: "Novices guide to install and build on Windows" (https://www.salome-platform.org/forum/forum_9/972618250#814073846). The worst thing, is that it seems, that "Salome SDK Archive" is not available for newer versions (or am I missing something?).

- I downloaded sources from "Downloads" sections of the website (salome-platform-src9.4.0.tar.gz). I guess, that the modules, which I am interested in are "GEOM" and "SMESH", but it seems to me, that the README files inside are relevant rather to Linux, than Windows. Besides, they are also not extremely detailed.

 

So, here are the questions, which I could not easily answer myself. Maybe someone could help me with them:

- Is there some "master" CMakeLists.txt, which is aimed to build the whole platform (or at least it's core parts)? I don't see any...

- Is there some way to understand dependencies between modules. E.g. if I want to build SMESH, do I also need GEOM? KERNEL, something else? How do I know?

- [WINDOWS]: does build on windows involve use of cygwin? Or Linux subsystem?

- [WINDOWS]: Which toolset is used on windows? MSVS? Which version?

- [WINDOWS]: Is there anywhere the archive of dependencies available for windows (similar to the one, I pointed to at the beginning of the post, but for the current version), so that one does not need to collect them all one by one, but just unpack the archive?

 

I work mostly on Windows, so it would be more convenient for me to have a Windows-build, but if for example it involves use of cygwin (or just significantly more complicated, than on Linux), then I would switch to Linux.

 

The background for my interest is following: I have a project, where I need to prepare some mesh for OpenFoam. From all the options I tried Salome looks to be the most promising. With simple small models everything just works very nicely. But the problem is, that the model I use has about 4000 faces. And the geometry is not absolutely clean (but I still think, the real issue is size). With the geometry of this complexity performance issues show up. Simple geometry operations (like e.g. grouping faces) take minutes to complete. But it is even worse with meshing. I tried to generate the mesh. I waited for over 1 day, but it did not complete.

So I am interested in doing some profiling of the operations, which I need. And probably improving the performance, if I can manage. If it will be successful, I can probably even commit back the code, if anyone would be interested in this.

Thank you in advance,

Dmitrii.

Re: Build instructions for Windows (and/or maybe Linux)

Posted by Dmitrii Semikin at July 06. 2020

Just found this one: https://docs.salome-platform.org/latest/dev/cmake/html/index.html

Maybe it will answer some of my questions...

Re: Build instructions for Windows (and/or maybe Linux)

Posted by Nabil Ghodbane at July 06. 2020

Building Windows version requires several steps  among which patching several external dependencies.

In addition some products are built with Mingw/Cygwin, while others are built with msbuild.

Currently, the SALOME windows version does not, on purpose, contains SOURCES as well as the so called SAT  which is the tool used to build SALOME.

Embedding the sources in an archive, such that the end-user can rebuild SALOME could be done, but it needs to be discussed internally first.

 

 

Re: Build instructions for Windows (and/or maybe Linux)

Posted by Saint Michael at July 06. 2020

Hi Dmitrii

If I'm not mistaken, it was possible to build SALOME from sources on windows in earlier versions. Check e.g. https://www.salome-platform.org/downloads/previous-versions/salome-v9.3

St.Michael

Re: Build instructions for Windows (and/or maybe Linux)

Posted by Nabil Ghodbane at July 06. 2020

Yes it is possible to do so with SALOME 9.3.0, but not with the latest SALOME versions (on purpose). Of course, as I wrote, one could think of adding the tool to build SALOME from scratch for Windows as well with SAT and a note about how to proceed and which external dependencies are required.

Re: Build instructions for Windows (and/or maybe Linux)

Posted by Dmitrii Semikin at July 06. 2020

Hello Nabil, Michael,

Thanks a lot for your answers.

 

Previously Saint Michael wrote:

Hi Dmitrii

If I'm not mistaken, it was possible to build SALOME from sources on windows in earlier versions. Check e.g. https://www.salome-platform.org/downloads/previous-versions/salome-v9.3

St.Michael

Good to know, that this option exists. The version is not too old. Probably I will give it a try.

 

Previously Nabil Ghodbane wrote:

Yes it is possible to do so with SALOME 9.3.0, but not with the latest SALOME versions (on purpose). Of course, as I wrote, one could think of adding the tool to build SALOME from scratch for Windows as well with SAT and a note about how to proceed and which external dependencies are required.

Well, good to know, that it is impossible to do it easily on windows after 9.4.0. This can save me some time. Probably I will then switch to Linux.

Just out of curiosity (if not a secret): what is the "purpose" of not having it buildable on windows?

 

Thank you once again for your help.

 

Dmitrii.

 

 

Re: Build instructions for Windows (and/or maybe Linux)

Posted by Nabil Ghodbane at July 06. 2020

> Just out of curiosity (if not a secret): what is the "purpose" of not having it buildable on windows?

there is no secret here. As I wrote, one can add the build machinery and list all required dependencies. We will raise this question.

For Linux, you need to follow the README file instructions.

HTH

 

Powered by Ploneboard
Document Actions