crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

14 страниц V  < 1 2 3 4 5 > »   
Ответить в данную темуНачать новую тему
> QtSerialPort, Проблема сборки QtSerialPort под Windows
kuzulis
  опции профиля:
сообщение 15.1.2013, 20:28
Сообщение #21


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата(asket @ 15.1.2013, 14:53) *
Алексей1153, в том то и дело что порт настроен соответствующим образом, скопировал кусок кода из примера terminal,
какие еще настройки влияют на работу приложения?


Да неужели правильно скопировал?

Цитата(asket @ 15.1.2013, 14:53) *
    if (m_Port->isOpen())
        m_Port->close();

    sleep(1);

    m_Port->setDataBits(SerialPort::Data8);
    m_Port->setRate(SerialPort::Rate115200);
    m_Port->setParity(SerialPort::NoParity);
    m_Port->setStopBits(SerialPort::OneStop);
    m_Port->setFlowControl(SerialPort::NoFlowControl);
    
    if (!m_Port->open(QIODevice::ReadWrite)){
        return ErrPortNotOpen;
    }


Едрить-колотить! Да сколько же можно? Доколе все ВЫ будете повторять эти ошибки?
Ты делаешь все неправильно! Читай документацию!
Или, для начала, хотя-бы проверяй возвращаемые значения методов setXXX()!

PS: Блин, задолбали с такими вопросами
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 16.1.2013, 15:57
Сообщение #22


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(kuzulis @ 15.1.2013, 22:28) *
Едрить-колотить! Да сколько же можно? Доколе все ВЫ будете повторять эти ошибки?Ты делаешь все неправильно! Читай документацию! Или, для начала, хотя-бы проверяй возвращаемые значения методов setXXX()!PS: Блин, задолбали с такими вопросами
Денис, а это всё от неестественности, я тебе ещё на прогорге про это говрил.
Гораздо естественнее: создать объект, настроить, а потом использовать. Поэтому люди так и делают.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
NAUGREEM
  опции профиля:
сообщение 16.1.2013, 17:26
Сообщение #23


Студент
*

Группа: Участник
Сообщений: 28
Регистрация: 16.1.2013
Пользователь №: 3675

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте!
Проблема тоже в винде (в линуксе всё работает)...
порт открываю так:
    SerialPort dev;
    dev.setPort(QString(port));
    bool res = dev.open(QIODevice::ReadWrite);
    if (!res)
    {
        return false;
    }
    if (res) res = dev.setRate(SerialPort::Rate9600);
    if (res) res = dev.setDataBits(SerialPort::Data8);
    if (res) res = dev.setParity(SerialPort::NoParity);
    if (res) res = dev.setStopBits(SerialPort::OneStop);
    if (res) res = dev.setFlowControl(SerialPort::NoFlowControl);
    if (!res)
    {
        dev.close();
        return false;
    }


далее пишу в порт строку байтов 'write()', а из порта 'read()' приходит в бесконечном цикле первый байт строки...
winXP|win7|win8 - одна беда((
на старой версии QtSerialPort такой проблемы в винде небыло
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 16.1.2013, 18:28
Сообщение #24


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата(NAUGREEM @ 16.1.2013, 18:26) *
далее пишу в порт строку байтов 'write()', а из порта 'read()' приходит в бесконечном цикле первый байт строки...
winXP|win7|win8 - одна беда((
на старой версии QtSerialPort такой проблемы в винде небыло


Ну чтож, приведи минимальный компилябельный пример, который воспроизводит проблему.
Из приведенного тобой описания ничего не понятно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
NAUGREEM
  опции профиля:
сообщение 16.1.2013, 19:15
Сообщение #25


Студент
*

Группа: Участник
Сообщений: 28
Регистрация: 16.1.2013
Пользователь №: 3675

Спасибо сказали: 0 раз(а)




Репутация:   0  


вот простой пример:

#include <QCoreApplication>
#include <QtAddOnSerialPort/serialport.h>

QT_USE_NAMESPACE_SERIALPORT

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    if (argc != 2) return -1;
    qDebug("port: %s", argv[1]);

    QByteArray id;
    SerialPort dev;
    dev.setPort(QString(argv[1]));
    bool res = dev.open(QIODevice::ReadWrite);
    if (!res)
    {
        return -1;
    }
    if (res) res = dev.setRate(SerialPort::Rate9600);
    if (res) res = dev.setDataBits(SerialPort::Data8);
    if (res) res = dev.setParity(SerialPort::NoParity);
    if (res) res = dev.setStopBits(SerialPort::OneStop);
    if (res) res = dev.setFlowControl(SerialPort::NoFlowControl);
    if (!res)
    {
        dev.close();
        return -1;
    }
    dev.write(QByteArray(2, 0x90));
    dev.write(QByteArray(1, 0x26));
    for (int i = 0; i < 100; i++)
    {
        if (dev.bytesAvailable() > 0)
        {
            id.append(dev.read(1));
            qDebug("Read IDa: %x", (uchar)id.right(1).data()[0]);
        }
        else
        {
            if (dev.waitForReadyRead(100))
            {
                id.append(dev.read(1));
                qDebug("Read IDw: %x", (uchar)id.right(1).data()[0]);
            }
            else break;
        }
        if (id[id.length() - 1] == (char)0) break;
    }
    dev.close();


    return a.exec();
}


запущен на winXP SP3, qt-4.8.4, MinGW-w64 - for 32 bit Windows (gcc-4.7.1)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 16.1.2013, 20:05
Сообщение #26


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата(NAUGREEM @ 16.1.2013, 20:15) *
вот простой пример:
...
...
...
запущен на winXP SP3, qt-4.8.4, MinGW-w64 - for 32 bit Windows (gcc-4.7.1)


И опять же, ты тоже неправильно используешь библиотеку.

В твоем случае см. в сторону примера BlockingMaster и внимательно читай комментарии в нем (точнее в qtserialport\doc\src\examples\).

Сообщение отредактировал kuzulis - 16.1.2013, 20:08
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
NAUGREEM
  опции профиля:
сообщение 17.1.2013, 13:22
Сообщение #27


Студент
*

Группа: Участник
Сообщений: 28
Регистрация: 16.1.2013
Пользователь №: 3675

Спасибо сказали: 0 раз(а)




Репутация:   0  


Экспериментируя с кодом заметил забавную вещь:

если строку
if (dev.bytesAvailable() > 0)

заменить на
if (dev.bytesAvailable() - 512 > 0)

то всё отлично работает

отсюда вопрос: почему в виндовсе при пустом буфере чтения функция bytesAvailable() возвращает 512?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 17.1.2013, 17:03
Сообщение #28


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Цитата(NAUGREEM @ 17.1.2013, 14:22) *
отсюда вопрос: почему в виндовсе при пустом буфере чтения функция bytesAvailable() возвращает 512?


Не знаю, не может такого быть.

Слинкуй статически исходники библиотеки с твоим приложением через "serialport-lib.pri" и пробегись дебаггером.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
NAUGREEM
  опции профиля:
сообщение 17.1.2013, 19:27
Сообщение #29


Студент
*

Группа: Участник
Сообщений: 28
Регистрация: 16.1.2013
Пользователь №: 3675

Спасибо сказали: 0 раз(а)




Репутация:   0  


что-то не собирается((

Раскрывающийся текст

g++ -c -pipe -fno-keep-inline-dllexport -g -frtti -fexceptions -mthreads -Wall -Wextra -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I'../../Qt/4.8.4/include/QtCore' -I'../../Qt/4.8.4/include' -I'../qtserialport/src/serialport' -I'../../Qt/4.8.4/inc
../qtserialport/src/serialport/serialport.cpp:382:1: warning: 'QtAddOn::SerialPort::SerialPort::SerialPort(QObject*)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:393:1: warning: 'QtAddOn::SerialPort::SerialPort::SerialPort(const QString&, QObject*)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:405:1: warning: 'QtAddOn::SerialPort::SerialPort::SerialPort(const QtAddOn::SerialPort::SerialPortInfo&, QObject*)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:415:1: warning: 'virtual QtAddOn::SerialPort::SerialPort::~SerialPort()' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:430:6: warning: 'void QtAddOn::SerialPort::SerialPort::setPort(const QString&)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
../qtserialport/src/serialport/serialport.cpp:441:6: warning: 'void QtAddOn::SerialPort::SerialPort::setPort(const QtAddOn::SerialPort::SerialPortInfo&)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
../qtserialport/src/serialport/serialport.cpp:483:9: warning: 'QString QtAddOn::SerialPort::SerialPort::portName() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:500:6: warning: 'virtual bool QtAddOn::SerialPort::SerialPort::open(QIODevice::OpenMode)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:530:6: warning: 'virtual void QtAddOn::SerialPort::SerialPort::close()' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
../qtserialport/src/serialport/serialport.cpp:553:6: warning: 'void QtAddOn::SerialPort::SerialPort::setRestoreSettingsOnClose(bool)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:568:6: warning: 'bool QtAddOn::SerialPort::SerialPort::restoreSettingsOnClose() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:599:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setRate(qint32, QtAddOn::SerialPort::SerialPort::Directions)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:613:8: warning: 'qint32 QtAddOn::SerialPort::SerialPort::rate(QtAddOn::SerialPort::SerialPort::Direction
s) const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:638:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setDataBits(QtAddOn::SerialPort::SerialPort::Da
taBits)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:649:22: warning: 'QtAddOn::SerialPort::SerialPort::DataBits QtAddOn::SerialPort::SerialPort::dataBits() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:672:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setParity(QtAddOn::SerialPort::SerialPort::Pari
ty)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:683:20: warning: 'QtAddOn::SerialPort::SerialPort::Parity QtAddOn::SerialPort::SerialPort::parity() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:705:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setStopBits(QtAddOn::SerialPort::SerialPort::St
opBits)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:716:22: warning: 'QtAddOn::SerialPort::SerialPort::StopBits QtAddOn::SerialPort::SerialPort::stopBits() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:738:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setFlowControl(QtAddOn::SerialPort::SerialPort:
:FlowControl)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:749:25: warning: 'QtAddOn::SerialPort::SerialPort::FlowControl QtAddOn::SerialPort::SerialPort::flowControl() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:773:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setDtr(bool)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:784:6: warning: 'bool QtAddOn::SerialPort::SerialPort::dtr() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:809:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setRts(bool)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:820:6: warning: 'bool QtAddOn::SerialPort::SerialPort::rts() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:844:19: warning: 'QtAddOn::SerialPort::SerialPort::Lines QtAddOn::SerialPort::SerialPort::lines() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:864:6: warning: 'bool QtAddOn::SerialPort::SerialPort::flush()' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:876:6: warning: 'bool QtAddOn::SerialPort::SerialPort::clear(QtAddOn::SerialPort::SerialPort::Directio
ns)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:907:6: warning: 'virtual bool QtAddOn::SerialPort::SerialPort::atEnd() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:921:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setDataErrorPolicy(QtAddOn::SerialPort::SerialP
ort::DataErrorPolicy)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:934:29: warning: 'QtAddOn::SerialPort::SerialPort::DataErrorPolicy QtAddOn::SerialPort::SerialPort::dataErrorPolicy() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:962:23: warning: 'QtAddOn::SerialPort::SerialPort::PortError QtAddOn::SerialPort::SerialPort::error() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:968:6: warning: 'void QtAddOn::SerialPort::SerialPort::clearError()' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
../qtserialport/src/serialport/serialport.cpp:993:8: warning: 'qint64 QtAddOn::SerialPort::SerialPort::readBufferSize() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1015:6: warning: 'void QtAddOn::SerialPort::SerialPort::setReadBufferSize(qint64)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1027:6: warning: 'virtual bool QtAddOn::SerialPort::SerialPort::isSequential() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1037:8: warning: 'virtual qint64 QtAddOn::SerialPort::SerialPort::bytesAvailable() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1050:8: warning: 'virtual qint64 QtAddOn::SerialPort::SerialPort::bytesToWrite() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1062:6: warning: 'virtual bool QtAddOn::SerialPort::SerialPort::canReadLine() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1080:6: warning: 'virtual bool QtAddOn::SerialPort::SerialPort::waitForReadyRead(int)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1088:6: warning: 'virtual bool QtAddOn::SerialPort::SerialPort::waitForBytesWritten(int)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1107:6: warning: 'bool QtAddOn::SerialPort::SerialPort::sendBreak(int)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1121:6: warning: 'bool QtAddOn::SerialPort::SerialPort::setBreak(bool)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
../qtserialport/src/serialport/serialport.cpp:1129:8: warning: 'virtual qint64 QtAddOn::SerialPort::SerialPort::readData(char*, qint64)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1137:8: warning: 'virtual qint64 QtAddOn::SerialPort::SerialPort::readLineData(char*, qint64)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
../qtserialport/src/serialport/serialport.cpp:1144:8: warning: 'virtual qint64 QtAddOn::SerialPort::SerialPort::writeData(const char*, qint64)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
In file included from ../qtserialport/src/serialport/serialport.cpp:1161:0:.
debug/moc_serialport.cpp:191:6: warning: 'static void QtAddOn::SerialPort::SerialPort::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
debug/moc_serialport.cpp:228:40: warning: 'QtAddOn::SerialPort::SerialPort::staticMetaObjectExtraData' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
debug/moc_serialport.cpp:232:31: warning: 'QtAddOn::SerialPort::SerialPort::staticMetaObject' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:241:20: warning: 'virtual const QMetaObject* QtAddOn::SerialPort::SerialPort::metaObject() const' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
debug/moc_serialport.cpp:246:7: warning: 'virtual void* QtAddOn::SerialPort::SerialPort::qt_metacast(const char*)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
debug/moc_serialport.cpp:254:5: warning: 'virtual int QtAddOn::SerialPort::SerialPort::qt_metacall(QMetaObject::Call, int, void**)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes].
debug/moc_serialport.cpp:315:6: warning: 'void QtAddOn::SerialPort::SerialPort::rateChanged(qint32, QtAddOn::SerialPort::SerialPort::Directions)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
In file included from ../qtserialport/src/serialport/serialport.cpp:1161:0:.
debug/moc_serialport.cpp:322:6: warning: 'void QtAddOn::SerialPort::SerialPort::dataBitsChanged(QtAddOn::SerialPort::SerialPort
::DataBits)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:329:6: warning: 'void QtAddOn::SerialPort::SerialPort::parityChanged(QtAddOn::SerialPort::SerialPort::
Parity)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:336:6: warning: 'void QtAddOn::SerialPort::SerialPort::stopBitsChanged(QtAddOn::SerialPort::SerialPort
::StopBits)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:343:6: warning: 'void QtAddOn::SerialPort::SerialPort::flowControlChanged(QtAddOn::SerialPort::SerialP
ort::FlowControl)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:350:6: warning: 'void QtAddOn::SerialPort::SerialPort::dataErrorPolicyChanged(QtAddOn::SerialPort::Ser
ialPort::DataErrorPolicy)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:357:6: warning: 'void QtAddOn::SerialPort::SerialPort::dtrChanged(bool)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:364:6: warning: 'void QtAddOn::SerialPort::SerialPort::rtsChanged(bool)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:371:6: warning: 'void QtAddOn::SerialPort::SerialPort::errorChanged(QtAddOn::SerialPort::SerialPort::P
ortError)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
debug/moc_serialport.cpp:378:6: warning: 'void QtAddOn::SerialPort::SerialPort::restoreSettingsOnCloseChanged(bool)' redeclared without dllimport attribute after being referenced with dll linkage [enabled by default].
In file included from ../qtserialport/src/serialport/serialport.cpp:1161:0:.
debug/moc_serialport.cpp:228:28: error: definition of static data member 'QtAddOn::SerialPort::SerialPort::staticMetaObjectExtraData' of dllimport'd class.
mingw32-make[1]: Leaving directory `C:/projects/TestSerialPort-build-Debug'.
mingw32-make[1]: *** [debug/serialport.o] Error 1.
mingw32-make: *** [debug] Error 2


.pro
QT       += core
QT       -= gui
include(../qtserialport/src/serialport/serialport-lib.pri)
TARGET = TestSerialPort
CONFIG   += console
CONFIG   -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 17.1.2013, 20:02
Сообщение #30


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Там в "serialport-global.h" надо закомментировать Q_DECL_XXX дефайны:
#if defined(QT_SERIALPORT_LIB)
#  define Q_SERIALPORT_EXPORT //Q_DECL_EXPORT
#else
#  define Q_SERIALPORT_EXPORT //Q_DECL_IMPORT
#endif
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

14 страниц V  < 1 2 3 4 5 > » 
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


11 чел. читают эту тему (гостей: 11, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.11.2024, 22:38