Skip to content

Commit dda2446

Browse files
committed
build: moved build requirements into pyproject
1 parent 8f54976 commit dda2446

7 files changed

Lines changed: 71 additions & 29 deletions

File tree

README.md

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -98,25 +98,28 @@ For common environment compositions factory functions such as `rcs.envs.creators
9898
This and other example can be found in the [examples](examples/) folder.
9999

100100
## Installation
101+
### From Source
101102

102-
We build and test RCS on the latest Debian and on the latest Ubuntu LTS.
103+
Make sure that common build tools i.e. `build-essential` and a C++ compiler like `gcc` or `clang` are installed on your system/conda/docker.
103104

104-
1. **System Dependencies**:
105-
```shell
106-
sudo apt install $(cat debian_deps.txt)
107-
```
105+
RCS works best in python 3.11, all extensions have been tested to work in 3.11.
106+
- For python >3.11 the `rcs_realsense` extension wont work for the pyrealsense2 version that RCS is using.
107+
- For python >3.12 the ompl python module is not available on pypi as of now. If OMPL is not used, it's save to remove this dependency in the pyproject.toml.
108108

109-
2. **Python Environment**:
110-
```shell
111-
conda create -n rcs python=3.11
112-
conda activate rcs
113-
pip install -r requirements.txt
114-
```
109+
```shell
110+
# setup environment
111+
conda create -n rcs python=3.11
112+
conda activate rcs
113+
conda install conda-forge::eigen conda-forge::glfw
114+
# or sudo apt install $(cat debian_deps.txt)
115+
pip install -r requirements.txt
116+
117+
# install rcs
118+
pip install -ve .
119+
```
115120

116-
3. **Install RCS**:
117-
```shell
118-
pip install -ve . --no-build-isolation
119-
```
121+
### Via PyPI/pip
122+
Coming soon...
120123

121124
## Hardware Extensions
122125

@@ -125,7 +128,9 @@ RCS supports various hardware extensions (e.g., FR3, xArm7, RealSense). These ar
125128
To install an extension:
126129

127130
```shell
128-
pip install -ve extensions/rcs_fr3 --no-build-isolation
131+
# make sure to install system libraries before
132+
sudo apt install $(cat debian_deps.txt)
133+
pip install -ve extensions/rcs_fr3
129134
```
130135

131136
For a full list of extensions and detailed documentation, visit [robotcontrolstack.org/extensions](https://robotcontrolstack.org/extensions).

extensions/rcs_fr3/pyproject.toml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
[build-system]
2-
requires = []
2+
requires = [
3+
"build",
4+
"wheel",
5+
"setuptools>=45",
6+
"scikit-build-core>=0.3.3",
7+
"pybind11",
8+
"cmake",
9+
"ninja",
10+
"pin==3.7.0",
11+
]
312
build-backend = "scikit_build_core.build"
413

514
[project]

extensions/rcs_panda/pyproject.toml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
[build-system]
2-
requires = []
2+
requires = [
3+
"build",
4+
"wheel",
5+
"setuptools>=45",
6+
"scikit-build-core>=0.3.3",
7+
"pybind11",
8+
"cmake",
9+
"ninja",
10+
]
311
build-backend = "scikit_build_core.build"
412

513
[project]

extensions/rcs_robotics_library/pyproject.toml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
[build-system]
2-
requires = []
2+
requires = [
3+
"build",
4+
"wheel",
5+
"setuptools>=45",
6+
"scikit-build-core>=0.3.3",
7+
"pybind11",
8+
"cmake",
9+
"ninja",
10+
]
311
build-backend = "scikit_build_core.build"
412

513
[project]

extensions/rcs_so101/pyproject.toml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
[build-system]
2-
requires = []
2+
requires = [
3+
"build",
4+
"wheel",
5+
"setuptools>=60",
6+
"scikit-build-core>=0.3.3",
7+
"pybind11",
8+
"cmake",
9+
"ninja",
10+
]
311
build-backend = "scikit_build_core.build"
412

513
[project]

pyproject.toml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
[build-system]
2-
requires = []
2+
requires = [
3+
"build",
4+
"wheel",
5+
"setuptools>=45",
6+
"scikit-build-core>=0.3.3",
7+
"pybind11",
8+
"cmake",
9+
"ninja",
10+
"mujoco==3.2.6",
11+
"pin==3.7.0",
12+
]
313
build-backend = "scikit_build_core.build"
414

515
[project]
@@ -40,7 +50,8 @@ authors = [
4050
{ name = "Seongjin Bien", email = "seongjin.bien@utn.de" },
4151
]
4252
requires-python = ">=3.10"
43-
license = "AGPL-3.0-or-later"
53+
# license = "AGPL-3.0-or-later"
54+
license = { file = "LICENSE" }
4455

4556
[project.optional-dependencies]
4657
dev = [

requirements.txt

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,2 @@
1-
build
2-
wheel
3-
setuptools
4-
scikit-build-core>=0.3.3
5-
pybind11
6-
cmake
7-
ninja
81
mujoco==3.2.6
92
pin==3.7.0

0 commit comments

Comments
 (0)