Giter Club home page Giter Club logo

gmsh's Introduction

This is Gmsh, an automatic three-dimensional finite element mesh generator with
built-in pre- and post-processing facilities.

Gmsh is copyright (C) 1997-2019 C. Geuzaine and J.-F. Remacle, and is
distributed under the terms of the GNU General Public License, Version 2 or
later, with an exception to allow for easier linking with external
libraries. See LICENSE.txt and CREDITS.txt for more information.

See the doc/ and tutorial/ directories for documentation. The reference manual
is located in doc/texinfo/. See the demos/ directory and the web site
http://gmsh.info for additional examples.

Building Gmsh from source code requires a C++ compiler and CMake
(http://cmake.org). Building the graphical user interface requires FLTK 1.3.2 or
higher (FLTK-dev 1.4 is required on macOS Mojave; http://fltk.org), configured
with OpenGL support. Support for boolean operations, constructive solid geometry
features and STEP file import requires OpenCASCADE 6.9 or higher (version 7.2 or
higher is highly recommended; http://www.opencascade.com).


Build Gmsh from the command line
--------------------------------

* Create a build directory, for example as a subdirectory of Gmsh's source
  directory:

    mkdir build

* To build the monolithic Gmsh app with the default build options, run cmake
  from within the build directory, pointing to Gmsh's source directory, then run
  "make"

    cd build
    cmake ..
    make

  Optionally running

    make install

  will install the Gmsh app in the standard system location (controlled by
  CMAKE_INSTALL_PREFIX - see below).

* To build the Gmsh app dynamically linked to the shared Gmsh library, which can
  then also be used by external codes through the C++, C, Python and Julia Gmsh
  API, run

    cd build
    cmake -DENABLE_BUILD_DYNAMIC=1 ..
    make
    make install

  This will install the Gmsh app and the shared Gmsh library, as well as the C++
  and C include files and the Python and Julia modules.

* To change build options you can use "ccmake" instead of "cmake", e.g.:

    ccmake ..

  or you can specify options directly on the command line. For example, you can
  use

    cmake -DCMAKE_PREFIX_PATH=/opt/local ..

  to specify the location of external packages installed in non-standard
  directories. You can use

    cmake -DCMAKE_INSTALL_PREFIX=/opt

  to change the installation directory. Or you could use

    cmake -DENABLE_FLTK=0 ..

  to build a version of Gmsh without the FLTK graphical interface. The list of
  all available configuration options is given in the reference manual.

* To see a detailed compilation log use

    make VERBOSE=1


Build Gmsh using CMake's graphical user interface
-------------------------------------------------

* Launch CMake and fill-in the two top input fields (telling where the Gmsh
  source directory is located and where you want the Gmsh binary to be created).

* Click on "Add entry" and define the variable CMAKE_PREFIX_PATH, of type
  "PATH", pointing to the location(s) of any external package(s) (FLTK,
  BLAS/LAPACK, etc.) installed in non-standard directories.

* Click on "Configure" and choose your compiler.

* Optionally change some configuration options (re-run "Configure" every time
  you change some options).

* Once you are happy with all the configuration options, click on "Generate".

* Go to the build directory and build Gmsh using your chosen compiler.

gmsh's People

Contributors

geuzaine avatar remacle avatar ajohnen avatar jonathanlambrechts avatar marsic42 avatar anroyer avatar dbeurle avatar akashanandiitk avatar kverhetsel avatar marsien44 avatar axmodave avatar fredrikekre avatar pa-beaufort avatar mrasquintest avatar demaet avatar bertbk avatar larryprice avatar nschloe avatar vdgnguyen avatar lstainier avatar kallumuttu avatar nicolas-tardieu avatar mxxo avatar kowalskin avatar smartavionics avatar pefarrell avatar bhelenbr avatar isuruf avatar guyer avatar enokcc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.