Skip to content

Conversation

@zhangrongchuan
Copy link

(GitLab username: rongchzg)

✔ Features Included

🔹 CMake configuration

  • Full support for:
    • Boost.Container (flatset example)
    • Boost.Filesystem
    • deal.II (FEM Poisson solver)
    • yaml-cpp v0.6.3 (bonus, built from source)
  • Clean target setup compatible with deal.II macros
  • Plain-style target_link_libraries to avoid keyword conflicts with deal.II

🔹 Docker environment

  • Base image: Ubuntu 24.04
  • Installs via apt:
    • build-essential, cmake, git, wget, unzip, vim
    • libboost-all-dev
    • libdeal.ii-dev
  • Builds yaml-cpp v0.6.3 from source manually:
    • Downloads from GitHub release
    • cmake .., make, make install, ldconfig
  • Copies entire project into container
  • Ensures clean environment (rm -rf build main)

✔ Implemented Modules

  • flatset/ (Boost.Container)
  • filesystem/ (Boost.Filesystem)
  • fem/ (deal.II Poisson solver)
  • yamlParser/ (yaml-cpp parsing)

✔ Runtime Verification

Inside the container:

docker run -it cmake-exercise
cd cmake-exercise
./build_and_run.sh

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant