Рецепт Yocto для добавления экспорта в .bash_profile

как я могу определить переменные среды, которые я бы в противном случае поместил в .bashrc или .bash_profile, используя экспорт в сборку yocto, чтобы не делать это каждый раз, когда я прошиваю ОС.

Для подробностей:
Плата, которую я собираю для: Toradex Apalis T30
Я добавляю этот рецепт: https://github.com/bmwcarit/meta-ros

Как показано в файле readme приведенного выше рецепта, нам нужно set up the environment with

export ROS_ROOT=/opt/ros
export ROS_DISTRO=indigo
export ROS_PACKAGE_PATH=/opt/ros/indigo/share
export PATH=$PATH:/opt/ros/indigo/bin
export LD_LIBRARY_PATH=/opt/ros/indigo/lib
export PYTHONPATH=/opt/ros/indigo/lib/python2.7/site-packages
export ROS_MASTER_URI=http://localhost:11311
export CMAKE_PREFIX_PATH=/opt/ros/indigo
touch /opt/ros/indigo/.catkin

Кроме того, как я могу добавить последнее касание для запуска только один раз (я полагаю, что его не нужно запускать каждый раз, когда открывается терминал).

Я попытался создать службу для объявления этих переменных, но я думаю, что это не самый эффективный (или, по крайней мере, хороший) способ сделать то же самое.


person Prajankya    schedule 23.04.2017    source источник


Ответы (1)


Я не знаю, есть ли более простой способ, но я создал .bbappend рецепта «base-files», содержащий файл .profile с

FILESEXTRAPATHS_prepend := "${THISDIR}/files:"

внутри.

Затем вам нужно иметь файл с именем dot.profile и поместить переменную среды.

В качестве общего совета: когда вы сталкиваетесь с проблемой такого рода, используйте команду find, чтобы узнать, какой рецепт предоставляет какие файлы.

person David Bensoussan    schedule 23.04.2017
comment
Потребовалось время, чтобы точно определить путь к папке и имена файлов, но, наконец, он работает, и ваш метод поиска помогает понять путь. - person Prajankya; 24.04.2017
comment
Это своего рода грубая сила, но она всегда работает. В качестве примечания советую добавить: # Источник автозаполнения ROS /opt/ros/indigo/share/rosbash/rosbash #Для использования roswtf export ROS_OS_OVERRIDE=ubuntu #Устанавливает ROS_IP export ROS_IP=$(ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}' | cut -d: -f1 | head -n 1 ) # Добавляет автодополнение для экспорта материалов ROS PATH=$ ПУТЬ:/опт/рос/индиго/бен - person David Bensoussan; 24.04.2017