Подсказки по инструментам командной строки

В данной статье представлен основной перечень команд, необходимых для разработки.

Подключение устройства

Для того чтобы включить режим разработчика, следует подключить устройство с помощью USB-кабеля к компьютеру. После чего в открывшемся окне «Режим USB по умолчанию» выбрать «Режим разработчика».

Далее необходимо в сетке приложений открыть «Настройки» → «Средства разработчика» → поле «IP адрес USB». В данном поле содержится IP-адрес устройства, который используется для установления SSH-подключения.

Если команды вводятся на среде сборки (SDK), то необходимо использовать su перед командами. Если команды вводятся на устройстве, то необходимо использовать devel-su перед командами.

В терминале необходимо перейти в режим суперпользователя, в файле hosts добавить строку IP-адресом устройства и параметром device и сохранить файл.

Пример:

127.0.0.1 localhost
127.0.1.1 ubuntu
192.168.2.15 device

После чего необходимо установить SSH-подключение с устройством с помощью команды:

ssh nemo@device

Далее необходимо подтвердить запрос на подключение и ввести пароль, сгенерированный автоматически на устройстве.

Основные команды

Вход в chroot-окружение:

/srv/mer/sdks/sdk/mer-sdk-chroot

Обновление среды разработки:

sb2 -t [наименование_цели] -m sdk-install -R zypper ref
sb2 -t [наименование_цели] -m sdk-install -R zypper update

Сборка проекта:

mb2 -t [наименование_цели] build # поиск SPEC-файла в RPM-пакете
mb2 -t [наименование_цели] -s rpm/<package>.spec build # указать SPEC-файл самостоятельно

Удаление SSH-ключей устройства из файла known_hosts:

ssh-keygen -R device

Копирование пакетов на устройство:

scp /RPMS/[наименование_пакета].rpm nemo@device:

Просмотр системного журнала :

devel-su journalctl -fa

Поиск в системном журнале по ключевому слову без учета регистра:

devel-su journalctl | grep -i [ключевое слово]

Открытие файлов с соответствующим приложением по умолчанию:

xdg-open [наименование_файла]

Вызов общего списка зависимостей библиотеки:

ldd /usr/lib/qt5/qml/modulepath/libmodule.so

Вызов списка экспортируемых символов:

zypper in binutils && nm -D /usr/lib/library.so.0

Установка значения DConf:

dconf write /desktop/meego/background/portrait/picture_filename \'/pathto/wallpaper.jpg\'

Вывод значения DConf:

dconf read /desktop/meego/background/portrait/picture_filename

Вывод списка входящих аппаратных событий:

evdev_trace -t

Поиск папок, которые занимают более 100 Мб пространства:

du --all --one-file-system / | awk \
'{if($1 > 102400) print int($1/1024) "MB" " " $2 }' # корневой раздел
du --all --one-file-system /home | awk \
'{if($1 > 102400) print int($1/1024) "MB" " " $2 }' # домашний раздел

Вызов списков RPM-пакетов, которые занимают наибольшее количество места в системе:

rpm -qa --queryformat '%{size} %{name}\n' | sort -rn | more

Выполнение QML-документа:

pkcon install qt5-qtdeclarative-qmlscene # установка qmlscene
ln -s /usr/lib/qt5/bin/qmlscene /usr/bin/qmlscene # добавление символической ссылки на путь
qmlscene app.qml # запуск