Skip to content

Information for New Developers

Mael Rouxel-Labbé edited this page Mar 28, 2024 · 1 revision

Table of Contents

⚠️ Warning: This page is only relevant to you if you have been accepted as a developer and in particular if you have a CGAL editor backing/mentoring you.

Once your mentor has introduced you on the CGAL Editorial Board mailing list, and once the CGAL Editorial Board has approved your participation in the CGAL project as a CGAL developer, you should follow these guidelines.

Creating a GitHub account

Once this is done, send an email with your GitHub ID to @sloriot, who will add you to the list of members of the CGAL organization so that you can see the private repositories.

Publicizing your membership

Once your GitHub account has been created, and added by an admin to the CGAL organization, you have to publicize your membership, so that all our GitHub actions work correctly. Follow these steps to do so.

Setting up your development environment

BEFORE YOU START ANY CODING BE SURE TO SET UP CGAL IN EXACTLY THIS WAY:

  • Uninstall any old CGAL Installation (if you installed CGAL through a package manager, use it to uninstall it again; if you installed CGAL from a tarball, you need to remove it manually)
  • Install all dependencies
    • on Arch Linux: pacman -S cmake qt5 gmp mpfi mpfr boost zlib mesa glu eigen.
    • on macOS, use brew (brew install --only-dependencies cgal) or macports.
    • on Windows, things are more delicate.
  • Clone your repository
    • cloning cgal-public-dev: git clone git@github.com:CGAL/cgal-public-dev.git.
    • add read-only branches: git remote add cgal git@github.com:CGAL/cgal.git.
  • Set CGAL_DIR persistently to a directory where you placed your clone of CGAL
    • UNIX environment: Add export CGAL_DIR=path/to/cgal to ~/.profile or your shell configuration file. Refer to your systems documentation for more specific information.
  • Build CGAL from the repository
  • You should consider setting the CMake CGAL_DEV_MODE option, while developing CGAL.

Important Resources

There is a lot of information in the wiki. Some pages that every developer should read are:

Stay in contact

  • Please introduce yourself on your user page of the internal wiki (click on your user name at the top of every wiki page when logged in), and provide your e-mail address there as well (note that the internal wiki is not publicly accessible).
  • Have a look at our mailing lists. The developers mainly communicate via cgal-develop (with restricted access only for CGAL developers), but you might want to also subscribe to the public (high-traffic) cgal-discuss and/or (low-traffic) cgal-announce.
  • We meet in person at CGAL developer meetings, which take place roughly each six months. We try to distribute the meetings between several institutes affiliated to CGAL. They are announced via cgal-develop and on the internal wiki.
Clone this wiki locally