2015-10-28 3 views
-1

Я хочу знать, как я могу настроить проект CMake, который компилирует собственный GTK в C. Я хочу, чтобы иметь возможность компилировать этот проект в Linux и Windows. Я в основном задаюсь вопросом, как включить GTK в свой проект и настроить CMakeList.txt соответственно. Это можно сделать?Portable Проект GTK cmake

+0

Очень много работы, много. Вы, конечно, не хотите этого делать. В GTK есть много зависимостей, при компиляции каждой зависимости, в свою очередь, потребуется больше программного обеспечения для компиляции, список может стать очень большим очень быстро. –

ответ

1

Теоретически это можно сделать, на практике это так сложно, что потребуется очень много времени, чтобы правильно настроить систему сборки, и тогда потребуется много времени для компиляции.

Кроме того,

  • В Linux, вы на самом деле не нужны, потому что если вы связываете динамически GTK и все другие необходимые библиотеки, то вы можете создать зависимости знающих пакеты как обороты с или deb s или даже более своеобразные, такие как Arch Linux или Slackware пакеты.

    Вы можете даже создать папуасских/protage пакет с тех пор, распределяя GTK с программным обеспечением заставит ваше программное обеспечение, чтобы быть GPL, так что исходный код должен будет доступен, если кто-то просит для него в любом случае.

  • В Windows существуют бинарные дистрибутивы для GTK, которые могут быть перераспределены с вашим программным обеспечением, см. this for example.

Компиляция GTK очень сложная задача и требует много знаний обо всех зависимостей и как компилировать их должным образом, не говоря уже это занимает много времени.

Вам нужно пойти с чем-то другим, потому что это не только сложно, но и не нужно, поскольку существует множество способов распространения программного обеспечения, использующего GTK.

+0

Вы правы, я думал о том, чтобы сделать что-то слишком излишнее. Все, что я хочу сделать на самом деле, представляет собой окно сообщения и может это сделать, независимо от того, скомпилирован ли мой код на linux или windows. Вероятно, у меня будет только две функции и загрузка правильной в зависимости от ОС. Спасибо за ответ, это действительно помогло мне понять, что мне действительно нужно! – DMSilva

Смежные вопросы