From 7fe1cf4c553c466d3339dd3377db5437ad86e6b0 Mon Sep 17 00:00:00 2001 From: Krishna-13-cyber Date: Tue, 1 Aug 2023 14:56:23 +0530 Subject: [PATCH 1/3] Update README --- README.md | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/README.md b/README.md index ea133a26..6277bf19 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +### Xeus-Clang-REPL + [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/compiler-research/xeus-clang-repl/HEAD?labpath=notebooks/Python-Cpp-Integration-Demo.ipynb) ## Description @@ -6,6 +8,43 @@ `Disclaimer: this work is highly experimental and might not work beyond the examples provided` +## Installation + +To ensure that the installation works, it is preferable to install `xeus-clang-repl` in a +fresh environment. It is also needed to use a +[miniforge](https://github.com/conda-forge/miniforge#mambaforge) or +[miniconda](https://conda.io/miniconda.html) installation because with the full +[anaconda](https://www.anaconda.com/) you may have a conflict with the zeromq library + +You will first need to install dependencies + +```bash +mamba install cmake cxx-compiler nlohmann_json cppzmq xtl jupyterlab clangdev=14 cxxopts pugixml -c conda-forge +``` + +**Note:** Use a mamba environment with python version >= 3.11 for fetching clang-versions + +The safest usage is to create an environment named `xeus-clang-repl` + +```bash +mamba create -n `xeus-clang-repl` +source activate `xeus-clang-repl` +``` + + + +```bash +mkdir build && cd build +cmake .. +make && make install +``` + ## Try it online To try out xeus-clang-repl interactively in your web browser, just click on the binder @@ -19,3 +58,26 @@ link: alt="Alt text" title="Optional title" style="display: block; margin: 0 auto; max-width: 450px"> + +## Documentation + +To get started with using `xeus-clang-repl`, The Documentation work is under Development. + +## Dependencies + +`xeus-clang-repl` depends on + +- [xtl](https://github.com/xtensor-stack/xtl) +- [nlohmann_json](https://github.com/nlohmann/json) +- [cppzmq](https://github.com/zeromq/cppzmq) +- [clang](https://github.com/llvm/llvm-project/) +- [cxxopts](https://github.com/jarro2783/cxxopts) + +| `xeus-clang-repl` | `xtl` | `clang` | `pugixml` | `cppzmq` | `cxxopts` | `nlohmann_json` | `dirent` (windows only) | +|-----------------------|-----------------|-----------|-----------|----------|-----------|-----------------|-------------------------| +| ~0.1.0 | >=0.7.0,<0.8.0 | >=16,<17 | ~1.8.1 | ~4.3.0 | >=3.0.0 | >=3.6.1,<4.0 | >=2.3.2,<3 | + +## License + +This software is licensed under the `Apache License`. See the [LICENSE](LICENSE) +file for details. From 2e4aaba22e64fe2b472c3fe1c486e5251c6e20fb Mon Sep 17 00:00:00 2001 From: Krishna Narayanan <84722531+Krishna-13-cyber@users.noreply.github.com> Date: Wed, 2 Aug 2023 16:50:16 +0530 Subject: [PATCH 2/3] Update with aligning the tabular columns --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6277bf19..33149ddb 100644 --- a/README.md +++ b/README.md @@ -73,9 +73,9 @@ To get started with using `xeus-clang-repl`, The Documentation work is under Dev - [clang](https://github.com/llvm/llvm-project/) - [cxxopts](https://github.com/jarro2783/cxxopts) -| `xeus-clang-repl` | `xtl` | `clang` | `pugixml` | `cppzmq` | `cxxopts` | `nlohmann_json` | `dirent` (windows only) | +| `xeus-clang-repl` | `xtl` | `clang` | `pugixml` | `cppzmq` | `cxxopts` | `nlohmann_json` | `dirent` (windows only) | |-----------------------|-----------------|-----------|-----------|----------|-----------|-----------------|-------------------------| -| ~0.1.0 | >=0.7.0,<0.8.0 | >=16,<17 | ~1.8.1 | ~4.3.0 | >=3.0.0 | >=3.6.1,<4.0 | >=2.3.2,<3 | +| ~0.1.0 | >=0.7.0,<0.8.0 | >=16,<17 | ~1.8.1 | ~4.3.0 | >=3.0.0 | >=3.6.1,<4.0 | >=2.3.2,<3 | ## License From aba23877f70d25350620458f9665b5f241077fef Mon Sep 17 00:00:00 2001 From: Krishna-13-cyber Date: Fri, 4 Aug 2023 19:48:47 +0530 Subject: [PATCH 3/3] Update with build instructions for xeus-clang-repl --- README.md | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 33149ddb..33bdc2df 100644 --- a/README.md +++ b/README.md @@ -40,9 +40,32 @@ mamba install`xeus-clang-repl` notebook -c conda-forge ``` --> ```bash -mkdir build && cd build -cmake .. -make && make install +git clone https://github.com/llvm/llvm-project + +git checkout -b release/15.0x + +git apply patches/llvm/clang15-D127284.patch + +mkdir build + +cd build + +cmake -DLLVM_ENABLE_PROJECTS=clang -DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles" ../llvm + +make -j n + +cd .. + +git clone https://github.com/compiler-research/xeus-clang-repl.git + +mkdir build + +cd build + +cmake ../ -DClang_DIR=/usr/lib/llvm-15/build/lib/cmake/clang\ + -DLLVM_DIR=/usr/lib/llvm-15/build/lib/cmake/llvm + +make -j n ``` ## Try it online