Russian Qt Forum
Ноябрь 24, 2024, 12:55
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Проблема программирования LPT с использованием inpout32.dll
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Проблема программирования LPT с использованием inpout32.dll (Прочитано 12582 раз)
karib
Гость
Проблема программирования LPT с использованием inpout32.dll
«
:
Март 17, 2011, 11:37 »
Уважаемые, доброго времени суток!
Прошу не пинать ногами, а помоч словом и делом ;o)))
Как-то так приключилось, что заинтересовался программированием, понадобилось управлять устройством через LPT порт. Для начала попробовал написать простенькую прогу (должна зажигать и гасить светодиод), чтобы понять как это всё работает. В программе использовал библиотеку inpout32.dl. Программа компилится без ошибок, но exe-шник не создается и в Консоли сборки выводится следующее сообщение:
Цитировать
debug/LED_LPT.o:C:\Qt\myprojects\LED_LPT-build-desktop/../LED_LPT/LED_LPT.cpp:33: undefined reference to `Out32(short, short)@8'
debug/LED_LPT.o:C:\Qt\myprojects\LED_LPT-build-desktop/../LED_LPT/LED_LPT.cpp:40: undefined reference to `Out32(short, short)@8'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\LED_LPT.exe] Error 1
mingw32-make: *** [debug] Error 2
Програмуля писалась с использованием стандартных Qt приблуд скачанных с сайта разработчика. В файле *.pro подключил библиотеку:
Цитировать
QT += core gui
TARGET = LED_LPT
TEMPLATE = app
SOURCES += main.cpp\
LED_LPT.cpp
HEADERS += LED_LPT.h
FORMS += LED_LPT.ui
LIBS += \
-LC:/Qt/myprojects/LED_LPT\
-linpout32
INCLUDEPATH += C:\Qt\myprojects\LED_LPT
файлы *.lib и *.dll положил в соответствующие каталоги. Подскажите, уважаемые, что не так. Заранее спасибо.
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #1 :
Март 17, 2011, 11:40 »
Нужно еще прилинковать либу, где определен Out32(short, short).
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
karib
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #2 :
Март 17, 2011, 11:47 »
Цитата: Пантер от Март 17, 2011, 11:40
Нужно еще прилинковать либу, где определен Out32(short, short).
я так понял, что строками:
Цитировать
LIBS += \
-LC:/Qt/myprojects/LED_LPT\
-linpout32
либу я и прилинковал. или еще что-то нужно прописать?
Записан
karib
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #3 :
Март 17, 2011, 14:23 »
Уважаемые Гуру, а может ли такое быть, что подключаемый либ-файл (*.lib) получен в мелкософтовской студии и с Qt у него что-то не срастает?
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #4 :
Март 17, 2011, 14:27 »
Вполне, если собираешь при помощи MinGW.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
karib
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #5 :
Март 17, 2011, 15:14 »
Цитата: Пантер от Март 17, 2011, 14:27
Вполне, если собираешь при помощи MinGW.
Засада, блин.
Отконвертировали Qt проект под Студию и моя прога запустилась (светодиод, правда в потр не тыкал).
Может кто подскажет, что можно использовать для управления LPT
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #6 :
Март 17, 2011, 15:17 »
тут почитай
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
karib
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #7 :
Март 17, 2011, 15:28 »
угу, спасибо! ;o)
Записан
karib
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #8 :
Апрель 07, 2011, 10:19 »
Проблема решилась.
Похоже, что компилятор MinGW действительно не может работать с этой библиотекой. Все заработало после того как стал использовать компилятор от майкрософтофской студии (установил Microsoft Visual C++ 2008 Express Edition).
Всем спасибо!
Записан
vasilii_ru
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #9 :
Февраль 10, 2012, 01:09 »
У меня стоит таже задача: работа с LPT портом, установлена Qt с креатором под VS2008. При обращении к функцией Out32(..) библиотеки выдает ошибку:
test_ion.obj:: error: unresolved external symbol "void __stdcall Out32(short,short)" (?Out32@@YGXFF@Z) referenced in function "private: void __thiscall test_ion::on_StartButton_clicked(void)" (?on_StartButton_clicked@test_ion@@AAEXXZ)
Помогите пожалуйста разобраться что не так
Записан
vasilii_ru
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #10 :
Февраль 10, 2012, 20:58 »
Разобрался надо было добавить строку "#pragma comment( lib, "inpout32.lib" )", видимо строки "LIBS += -LC:\Qt\2010.05\...\inpout32.lib" в файле *.pro недостаточно
Записан
Edynchik
Гость
Re: Проблема программирования LPT с использова
«
Ответ #11 :
Февраль 21, 2012, 17:35 »
Цитата: karib от Апрель 07, 2011, 10:19
Проблема решилась.
Похоже, что компилятор MinGW действительно не может работать с этой библиотекой. Все заработало после того как стал использовать компилятор от майкрософтофской студии (установил Microsoft Visual C++ 2008 Express Edition).
Всем спасибо!
Добрый вечер!
возникла такая же проблема с этой библиотекой. Как использовать компилятор от VS 2010 в creator? т.е в инструментариях он есть, а выбрать в свойствах проета не позволяет.
Спасобо.
Записан
Edynchik
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #12 :
Февраль 22, 2012, 09:21 »
у меня две...creator(первая) и vs2010 с скомпилированной библиотекой(вторая)...и в creator не могу подставить компилятор от VS...
Записан
QuAzI
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #13 :
Февраль 22, 2012, 10:32 »
А выложите кто-нить эту библу, аж интересно стало, что там не линкуется.
Записан
Edynchik
Гость
Re: Проблема программирования LPT с использованием inpout32.dll
«
Ответ #14 :
Февраль 22, 2012, 10:52 »
Цитата: kyv от Февраль 22, 2012, 10:23
1) Creator - это не Qt. Это инструмент, собранный с помощью Qt.
2) Инструменты -> Параметры -> Сборка и запуск -> Профили Qt -> Добавить -> Ткнуть в qmake, скомпилированный в VS 2010. Теперь на текущем проекте идём в "Проекты" и меняем профиль на Qt для VS 2010.
Спасибо,так и вышло...компилятор подставился, но библиотека так и не скомпилировалась...но библиотека почему то не линкуется,можете посмотреть что я делаю не так?
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...