Misc Workspace¶
Note: the misc workspace should be used with caution as it is an unconvenient way to build your software.
The misc workspace can be used to build plain cmake, fla or other types of git repositories, but the build procedure has to be managed manually by the user. The misc workspace has the following structure:
|-- misc_ws
|-- export
|-- repo-A
|-- repo-B
|-- ...
The misc workspace is included when the command
fzirob scrape_environment <workspace> <config-file>
is used and also applied when
fzirob adapt_environment <workspace> <config-file>
or
# If your environment contains a misc_ws you probably want to built its contents first
# (see next section) before building any workspace depending on that. That's why the
# '--no_build' flag is activated in this example
fzirob add_environment <workspace> --config_file <config-file> --no_build
is used to share or save a workspace with others.
When sourcing an environment, the misc_ws export folder will be sourced ontop of the catkin_workspace / colcon workspace. This way, it will be available to other workspaces automatically.
Exported (and sourced) paths¶
Currently, the following paths are added to the respective environment variables when sourcing an environment:
misc_ws/export/lib
gets added to$LD_LIBRARY_PATH
misc_ws/export/bin
gets added to$PATH
misc_ws/export
gets added to$CMAKE_PREFIX_PATH
Misc workspace example¶
Assume that repository “repo-A” has build dependencies on repository “repo-B”: repo-B depends on repo-A. Then you can build the workspace manually by calling:
cd repo-B
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../../export -DBUILD_SHARED_LIBS=1
make
make install
cd ../../repo-A
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../../export -DBUILD_SHARED_LIBS=1
make
make install