= About QextSerialPort = QextSerialPort provides an interface to old fashioned serial ports for Qt-based applications. It currently supports Mac OS X, Windows, Linux, FreeBSD. http://code.google.com/p/qextserialport/ == How to use (1) == * Download the source code. * Put the source code in any directory you like. For example, 3rdparty: |-- project.pro |-- .... |-- 3rdparty\ | |-- qextserialport\ | | * Add following line to your qmake project file: include(3rdparty/qextserialport/src/qextserialport.pri) * Using QextSerialPort in your code. Enjoy it! #include "qextserialport.h" .... QextSerialPort * port = new QextSerialPort(); .... == How to use (2) == It's very easy to compile QextSerialPort directly into your application (see above section), however, we would prefer to use it as a static or shared library. * Download the source code, and put it in any location you like. |-- yourpath\ | |-- qextserialport\ | | * Create a config.pri file, and put into qextserialport's directory. |-- yourpath\ | |-- qextserialport\ | | |-- config.pri * Contents of config_example.pri # uncomment the following line if you want to use qesp as library # QEXTSERIALPORT_LIBRARY = yes # uncomment the following line too if you want to use it as static library # QEXTSERIALPORT_STATIC = yes * Goto qextserialport/buildlib, and run following command to generate library. qmake make (or nmake) * Add following line to your qmake project file. Enjoy it! include(pathToQextserialport/src/qextserialport.pri) == How to use (3) == Someone complains that, I want to used !QextSerialPort as a shared libaray, but I don't want to add the {{{include(***.pri)}}} to my project file. Otherwise, all the source files of !QextSerialPort will be shown in Qt Creator, which is very annoying. Ok, let's go! * Download the source code, and put it in any location you like. * Goto qextserialport/buildlib, and run following command to generate library. (Yes, config.pri is not needed.) qmake make (or nmake) * Add following lines to your .pro file. And you need to specify the path to the lib and headers. Then Enjoy it! # Specify lib and headers path if they are not in standard locations. # Otherwise, your can ignore this. unix{ QEXTSERIALPORT_LIBDIR = #path_to_qextserialport_lib QEXTSERIALPORT_INCDIR = #path_to_qextserialport_headers }else{ QEXTSERIALPORT_LIBDIR = #path_to_qextserialport_lib QEXTSERIALPORT_INCDIR = #path_to_qextserialport_headers } SAVE_TEMPLATE = $$TEMPLATE TEMPLATE = fakelib QEXTSERIALPORT_LIBNAME = $$qtLibraryTarget(qextserialport-1.2) TEMPLATE = $$SAVE_TEMPLATE INCLUDEPATH += $$QEXTSERIALPORT_INCDIR LIBS += -L$$QEXTSERIALPORT_LIBDIR -l$$QEXTSERIALPORT_LIBNAME DEFINES += QEXTSERIALPORT_USING_SHARED unix:QMAKE_RPATHDIR += $$QEXTSERIALPORT_LIBDIR * Oh, this file looks a bit complicated, as we need cross-platform. If you don't care cross-platform. It will be very simple :-) , for example INCLUDEPATH += /home/xxxx/download/qextserialport/src LIBS += /home/xxxx/download/qextserialport/lib/libqextsrialport-1.2.so DEFINES += QEXTSERIALPORT_USING_SHARED * Note: * If you do not want to add such lines to each of your projects. This is another solution too. * Create a new file called *extserialport.prf* , then add above lines to this new file. * Put this .prf file to one of feature paths, such as $QTDIR\mkspecs\features\ * Add the following line to your .pro file. Enjoy it! CONFIG += extserialport == Build (optional) == * Run qmake from the toplevel directory.(If your has create a config.pri file properly, this will generate the library, and then all examples will use the library. Otherwise, qextserialport will be directly compiled into the examples) qmake (or qmake -r) make (or nmake) * Run qdoc3 from the doc directory. qdoc3 qextserialport.qdocconf