Skip to content

Commit 43d7040

Browse files
Restructured installation instructions
1 parent 0ed64db commit 43d7040

File tree

1 file changed

+43
-41
lines changed

1 file changed

+43
-41
lines changed

README.md

Lines changed: 43 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -178,37 +178,7 @@ pip install numpy
178178
pip install --no-index --find-links=./dist franky-control
179179
```
180180

181-
Franky is based on [libfranka](https://github.com/frankaemika/libfranka), [Eigen](https://eigen.tuxfamily.org) for
182-
transformation calculations and [pybind11](https://github.com/pybind/pybind11) for the Python bindings.
183-
As the Franka is sensitive to acceleration discontinuities, it requires jerk-constrained motion generation, for which
184-
Franky uses the [Ruckig](https://ruckig.com) community version for Online Trajectory Generation (OTG).
185-
186-
After installing the dependencies (the exact versions can be found [here](#-development)), you can build and install
187-
Franky via
188-
189-
```bash
190-
git clone --recurse-submodules git@github.com:timschneider42/franky.git
191-
cd franky
192-
mkdir -p build
193-
cd build
194-
cmake -DCMAKE_BUILD_TYPE=Release ..
195-
make
196-
make install
197-
```
198-
199-
To use Franky, you can also include it as a subproject in your parent CMake via `add_subdirectory(franky)` and then
200-
`target_link_libraries(<target> franky)`.
201-
202-
If you need only the Python module, you can install Franky via
203-
204-
```bash
205-
pip install .
206-
```
207-
208-
Make sure that the built library `_franky.cpython-3**-****-linux-gnu.so` is in the Python path, e.g. by adjusting
209-
`PYTHONPATH` accordingly.
210-
211-
#### Using Docker
181+
### Using Docker
212182

213183
To use Franky within Docker we provide a [Dockerfile](docker/run/Dockerfile) and
214184
accompanying [docker-compose](docker-compose.yml) file.
@@ -234,16 +204,6 @@ docker compose run franky-run bash
234204
The container requires access to the host machines network *and* elevated user rights to allow the docker user to set RT
235205
capabilities of the processes run from within it.
236206

237-
#### Building Franky with Docker
238-
239-
For building Franky and its wheels, we provide another Docker container that can also be launched using docker-compose:
240-
241-
```bash
242-
docker compose build franky-build
243-
docker compose run --rm franky-build run-tests # To run the tests
244-
docker compose run --rm franky-build build-wheels # To build wheels for all supported python versions
245-
```
246-
247207
### Can I use CUDA jointly with Franky?
248208

249209
Yes. However, you need to set `IGNORE_PREEMPT_RT_PRESENCE=1` during the installation and all subsequent updates of the CUDA drivers on the real-time kernel.
@@ -270,6 +230,48 @@ Alternatively, if you are a cowboy and do not care about security, you can also
270230
bash <(wget -qO- https://raw.githubusercontent.com/timschneider42/franky/master/tools/install_cuda_realtime.bash)
271231
```
272232

233+
### Building Franky
234+
235+
Franky is based on [libfranka](https://github.com/frankaemika/libfranka), [Eigen](https://eigen.tuxfamily.org) for
236+
transformation calculations and [pybind11](https://github.com/pybind/pybind11) for the Python bindings.
237+
As the Franka is sensitive to acceleration discontinuities, it requires jerk-constrained motion generation, for which
238+
Franky uses the [Ruckig](https://ruckig.com) community version for Online Trajectory Generation (OTG).
239+
240+
After installing the dependencies (the exact versions can be found [here](#-development)), you can build and install
241+
Franky via
242+
243+
```bash
244+
git clone --recurse-submodules git@github.com:timschneider42/franky.git
245+
cd franky
246+
mkdir -p build
247+
cd build
248+
cmake -DCMAKE_BUILD_TYPE=Release ..
249+
make
250+
make install
251+
```
252+
253+
To use Franky, you can also include it as a subproject in your parent CMake via `add_subdirectory(franky)` and then
254+
`target_link_libraries(<target> franky)`.
255+
256+
If you need only the Python module, you can install Franky via
257+
258+
```bash
259+
pip install .
260+
```
261+
262+
Make sure that the built library `_franky.cpython-3**-****-linux-gnu.so` is in the Python path, e.g. by adjusting
263+
`PYTHONPATH` accordingly.
264+
265+
#### Building Franky with Docker
266+
267+
For building Franky and its wheels, we provide another Docker container that can also be launched using docker-compose:
268+
269+
```bash
270+
docker compose build franky-build
271+
docker compose run --rm franky-build run-tests # To run the tests
272+
docker compose run --rm franky-build build-wheels # To build wheels for all supported python versions
273+
```
274+
273275
## 📚 Tutorial
274276

275277
Franky comes with both a C++ and Python API that differ only regarding real-time capability.

0 commit comments

Comments
 (0)