Bug 55641 - libwmf-devel: ft2build.h -> freetype2/ft2build.h
Summary: libwmf-devel: ft2build.h -> freetype2/ft2build.h
Status: CLOSED NOTABUG
Alias: None
Product: Sisyphus
Classification: Development
Component: libwmf (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-08-18 18:12 MSK by Artem Varaksa
Modified: 2025-08-28 12:50 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Artem Varaksa 2025-08-18 18:12:15 MSK
Шаги
====

1. # apt-get install -y gcc libwmf libwmf-devel

2. $ cat > dependencies.c << 'EOF'
#include <libwmf/api.h>
#include <libwmf/gd.h>

int main(int argc, char* argv[]) {
    return 0;
}
EOF

3. $ gcc                          dependencies.c -o dependencies -lwmf -lwmflite
4. $ gcc -I/usr/include/freetype2 dependencies.c -o dependencies -lwmf -lwmflite


Фактический результат
=====================

3.

> In file included from /usr/include/libwmf/api.h:25,
>                  from dependencies.c:1:
> /usr/include/libwmf/types.h:26:10: fatal error: ft2build.h: Нет такого файла или каталога
>    26 | #include <ft2build.h>
>       |          ^~~~~~~~~~~~
> compilation terminated.

4.

> <успешно>


Ожидаемый результат
===================

Успешная компиляция без ручного указания include.


Воспроизводимость
=================

Воспроизводится на виртуальных машинах:

[sisyphus] ALT Server 11.0 x86_64
libwmf-0.2.13-alt1.x86_64

[p11] ALT Server 11.0 x86_64
libwmf-0.2.8.4-alt13.x86_64
Comment 1 Anton Farygin 2025-08-28 12:07:15 MSK
не понял в чём ошибка.
После указания include работает ?
Comment 2 Anton Farygin 2025-08-28 12:10:55 MSK
$ pkg-config --cflags libwmf
-I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
Comment 3 Artem Varaksa 2025-08-28 12:50:39 MSK
Когда собирал простые тестовые программы для тестирования библиотек, до этого было достаточно указать аргументы вида `-lwmf -lm` и т. п. для используемых в самой программе библиотек, а уже их зависимости находились сами. Вероятно, везде include были прописаны в виде `<freetype2/ft2build.h>`.

Здесь же необходимо одно из:
* Указывать `-I/usr/include/freetype2`.
* Использовать систему сборки, которая найдёт сама эти библиотеки.
* Дописать в команду сборки `$(pkg-config --cflags libwmf)`, исходя из комментарий #2.

Завёл ошибку, т. к. поведение отличалось. Но вероятно, действительно ожидаемо.