Heads, это будет сбивать с толку:
Я настроил 9 файлов из Qt5.2: qquicktextdocument.cpp qquicktextdocument.h qquicktextedit.cpp qquicktextedit_p.h qquicktextedit_p_p.h qquicktextnode.cpp qquicktextnodeengine.cpp qquicktextnodeenginehp.
Каждый файл просто начинается с буквы и до сих пор находится в / qtdeclarative / src / quick / items /. Я на 100% доволен внесенными мною изменениями в GPL и т. Д. Я бы хотел, чтобы моим конечным приложением (обсуждаемым ниже) было Apache или MIT, но я гибок.
Мои модификации работают нормально. Когда я изменяю несколько дополнительных файлов, я могу скомпилировать их вместе с остальной частью Qt (в то же время, используя ту же команду make). Но эти изменения входят в другое приложение Qt, которое я делаю, и которое я хочу, чтобы другие люди могли использовать, и требовать, чтобы обычные потребители имели пользовательскую скомпилированную версию Qt, было бы, очевидно, абсурдом.
Я хочу упаковать / скомпилировать / сделать что-то, что позволит мне включить изменения в мой окончательный проект в виде разделяемой библиотеки или что-то в этом роде.
Как веб-разработчик, пишущий на C ++ и Qt, я очень озадачен связыванием разделяемых библиотек, заголовочных файлов и т. Д.
Напомним, что я модифицировал Qt 5.2 и сделал его собственную компиляцию для приложения, которое я создаю, и я хочу, чтобы люди могли запускать это приложение без необходимости иметь собственную компиляцию Qt. Мне нужен способ отделить мои модификации Qt от Qt.
Я понимаю, что это может быть большой темой, я не ожидаю пошаговое руководство, просто некоторые общие рекомендации. До сих пор я пытался скомпилировать мои измененные файлы как библиотеку, затем включить эту библиотеку в свой проект, но я получаю неопределенные ссылки и пропущенные файлы повсюду. (Я не знаю, правильно ли я сделал)
Я также в настоящее время смотрю на подклассы классов, которые я хочу, но я не уверен в этом. Возможно, потребуется скопировать код, который может иметь проблемы с лицензированием?
конечная цель: иметь возможность иметь волнистое подчеркивание (в qml) для неправильно написанных слов.
Благодарю вас.
Мои 5 центов.
plugin
механизм. Вы можете скомпилировать ваш код в общий объект (динамическая библиотека) и установить его вместе с вашим приложением. Например, QML FolderListModel делает это. Вы можете посмотреть на код в $qt5_src/qtdeclarative/src/imports/folderlistmodel
,Других решений пока нет …