2022-12-13 21:42:28 +03:00
|
|
|
|
---
|
|
|
|
|
title: "🪟 Сборка DWM в OpenBSD или ошибка ft2build.h"
|
|
|
|
|
date: 2022-12-13T21:32:54+03:00
|
|
|
|
|
draft: false
|
|
|
|
|
tags: [openbsd, tips]
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## DWM
|
|
|
|
|
|
|
|
|
|
DWM — динамический тайлинговый оконный менеджер для оконного интерфейса X11
|
2022-12-14 21:40:11 +03:00
|
|
|
|
([Wikipedia](https://ru.wikipedia.org/wiki/Dwm)).
|
2022-12-13 21:42:28 +03:00
|
|
|
|
|
2022-12-14 21:40:11 +03:00
|
|
|
|
Загрузить исходные тексты можно по [этой](https://dwm.suckless.org/) ссылке,
|
|
|
|
|
а по [этой](https://dl.suckless.org/dwm/) доступны все версии.
|
2022-12-13 21:42:28 +03:00
|
|
|
|
|
|
|
|
|
## Сборка
|
|
|
|
|
|
|
|
|
|
Предположу, что ты уже загрузил архив с исходниками и попробовал запустить команду `make`.
|
|
|
|
|
|
2022-12-14 21:40:11 +03:00
|
|
|
|
Одной из зависимостей DWM является **FreeType2**,
|
2022-12-13 21:42:28 +03:00
|
|
|
|
заголовочные файлы которой компилятор не может найти.
|
|
|
|
|
|
2022-12-14 21:40:11 +03:00
|
|
|
|
А всё дело в том, что путь к библиотеке,
|
2022-12-13 21:42:28 +03:00
|
|
|
|
отличается от фактического пути библиотек в OpenBSD.
|
|
|
|
|
|
2022-12-14 21:40:11 +03:00
|
|
|
|
Путь жёстко прописан в файле `config.mk`.
|
|
|
|
|
|
2022-12-13 21:42:28 +03:00
|
|
|
|
```text
|
|
|
|
|
# freetype
|
|
|
|
|
...
|
|
|
|
|
FREETYPEINC = /usr/include/freetype2
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-14 21:40:11 +03:00
|
|
|
|
Попробуем найти недостающий для сборки файл `ft2build.h` в системе:
|
2022-12-13 21:42:28 +03:00
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
find / -type f -name ft2build.h
|
|
|
|
|
/usr/X11R6/include/freetype2/ft2build.h
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-14 21:40:11 +03:00
|
|
|
|
Олтчно, файл есть 🙂
|
|
|
|
|
|
|
|
|
|
Далее вносим изменения в файл `config.mk`, запускаем сборку снова и выполняем `make install`
|
|
|
|
|
если необходимо установить `dwm` в систему.
|
2022-12-13 21:42:28 +03:00
|
|
|
|
|
|
|
|
|
Не забываем добавить `exec dwm` в файл `~/.xsession` и перезапустить сервис xenodm.
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
rcctl -f restart xenodm
|
|
|
|
|
```
|