Задача: собрать небольшую библиотечку сишную (jpeg2000 декодер на...

Задача: собрать небольшую библиотечку сишную (jpeg2000 декодер на cuda). CUDA уже есть, казалось бы качай-собирай-используй.

Скачиваем.
Видим что она собирается CMake'ом. Ставим его.
Видим что ему для работы нужен какой-то pkg-config. Ужасаемся что его надо собирать из исходников. Находим уже собранный.
А ему для работы нужна куча dll от GTK, причем хрен знает какой версии. Находим уже собранные. Не подходят. Находим еще. С третьего раза запускается.
А еще нам нужен FreeImage. Ну он к счастью под винду собранный уже есть.
Немножечко допиливаем естественно неработающие "из коробки" сборочные скрипты. CMake генерит проект для вижуал студии.
Проекты тоже корявые, допиливаем.
После пары часов продирания через ТЫСЯЧИ ошибок компиляции доходит ужасная правда: MSVC не поддерживает стандарт C99, поэтому собрать им библиотеку не получится (ну или придется вручную переписывать кучу кода чтобы подходил под старый стандарт).
Таак, что у нас там поддерживает C99? Ага, GCC. Ну под винду его самого нет, есть его порт - MinGW. Скачиваем, ставим.
Чтобы его подружить с CMake нужно писать toolchain-конфиг.

АААААААААААААААААААААА ДА ВЫ ОФИГЕЛИ МНЕ ОДНУ ТУПУЮ БИБЛИОТЕКУ СОБРАТЬ НАДО БЫЛО РАДИ ОДНОЙ ЧЕРТОВОЙ ФУНКЦИИ, А Я УЖЕ ДВА ДНЯ НА ЭТУ ХРЕНЬ УБИЛ!!!

Ненавижу опенсорс.
The task: to assemble a small library of jitters (jpeg2000 decoder on cuda). CUDA is already there, seemingly download-pick-use.

Download.
We see that she is going to CMake'om. We put it.
We see that he needs some pkg-config to work. We are terrified that it should be collected from sources. We find already collected.
And he needs a bunch of dll from GTK for work, and hell knows which version. We find already collected. Unsuitable. We find more. From the third time it starts.
We also need FreeImage. Well, fortunately for Windows, it already exists.
A little bit we finish the naturally out-of-the-box assembly scripts. CMake generates a project for a visual studio.
Projects are also clumsy, we finish.
After a couple of hours of getting through the THOUSANDS of compilation errors, the terrible truth comes up: MSVC does not support the C99 standard, so it’s impossible to build the library (well, or you have to manually rewrite a bunch of code to fit the old standard).
Taak, what support does the C99 have there? Yeah, gcc. Well, under Windows it does not exist, there is its port - MinGW. Download, set.
To make friends with CMake, you need to write a toolchain-config.

AAAAAAAAAAAAAAAAAAAAAA YES YOU ofigela me a dull LIBRARY TO COLLECT it was necessary for the sake of ferris FUNCTIONS, and I have two days on this crap KILLED !!!

I hate open source.
У записи 1 лайков,
0 репостов.
Эту запись оставил(а) на своей стене Егор Смирнов

Понравилось следующим людям