Библиотека последовательного порта Qt - PullRequest
1 голос
/ 05 июля 2011

Я хочу создать приложение, использующее Qt, которое взаимодействует с последовательным портом.

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

На самом деле я не уверен, потому что я не знаю, могу ли я использовать Универсальную публичную лицензию для программы с закрытым исходным кодом.

Я нашел qextserialport, но не могу собрать его, используя Qt 4.7.3. Я добавил все необходимые заголовки, но он не работает в некоторых функциях.

Может ли кто-нибудь помочь мне здесь?

Ответы [ 2 ]

4 голосов
/ 05 июля 2011

Если вы хотите использовать закрытый исходный код и распространять свое приложение, вы не можете использовать GPL. Вы можете использовать LGPL при линковке динамически или статически. Для последнего вам нужно предоставить объектные файлы для всего вашего кода , чтобы они могли быть статически связаны с Qt.

Что касается вашей базовой проблемы, Qt 5 включает в себя модуль последовательного порта. На Qt 4 вам потребуется решение для конкретной платформы. Сокращение области может помочь указать вам на что-то. Я полагаю, что если вы не нацелены на переносимость, вы должны добавить соответствующие теги и комментарии. Иначе сказать, что вам нужно портативное решение, тоже хорошо.

Насколько мне известно, на большинстве платформ для доступа к последовательному порту требуются более высокие привилегии, поэтому будьте готовы к этому в своем развертывании.

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

Я попытался скомпилировать его, используя VC2010 и Qt 4.7.2, и руководитель проекта (я только что его клонировал) скомпилировал безупречно: я получил хороший файл qextserialport1.dll (который, я признаю, я не пробовал использовать).

3 голосов
/ 15 августа 2013

В настоящее время существует дополнение QtSerialPort, которое можно использовать для таких задач. Я один из сопровождающих. Это "официальное" дополнение Qt в настоящее время, поэтому я бы предложил перейти на него. Он также будет поддерживать Qt 4.

Это полезно для коммерческого кода (с закрытым исходным кодом), так как я тоже это делал. Если у нас еще нет исключения для статического связывания, я бы даже согласился, если это возможно по закону.

Мое мнение о лицензиях находится где-то между LGPLv2 и MIT, то есть LGPLv2 + статическое связывание.

Здесь вы можете найти мой пост в блоге об этом. Он также отлично работает с Qt 4, так как мы приложили некоторые усилия и к этой поддержке.

http://lpapp.blogspot.co.uk/2013/02/qtserialport-in-qt-51.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...