реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Builder C++ 6.0, ошибка линкера Unresolved external referenced from
KARLSON
сообщение Aug 16 2013, 11:57
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



Здравствуйте.
Делаю проект с параллельным потоком. В параллельном потоке работаю с библиотекой от FTDI. Как только не подключал я ftd2xx.h, всё без полезно.
Линкер выдаёт аналогичные ошибки этой:
[Linker Error] Unresolved external 'FT_OpenEx' referenced from D:\YANDEX DISK\GSM\PROGRAMSBORKA\THREADCOMMUNICATIONDEVICE.OBJ
Я понимаю, что он не видит тело функции, но побороть не получается.
Раньше я работал без параллельных потоков, в главном файле подключаю ftd2xx.h и всё работает, а тут что-то не получается.
Проект приложил.
Прикрепленные файлы
Прикрепленный файл  ProgramSborka.rar ( 960.51 килобайт ) Кол-во скачиваний: 4
 


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 16 2013, 12:32
Сообщение #2


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



У вас ftd2xx.lib не включена в проект, а без нее dll-ки использовать нельзя.

Но и ее включение в проект вас не спасет, т.к. эта либа написана в другом формате (COFF вместо OMF).

Создате библиотеку ftd2xx.lib импорта заново средствами самого Билдера, натравив implib.exe на ftd2xx.dll.
Go to the top of the page
 
+Quote Post
KARLSON
сообщение Aug 16 2013, 12:43
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



В тех проектах(без параллельных потоков), где всё работает в файле .cpp формы (там же используются функции от FTDI) только одна строчка #include "FTD2XX.h".
Я так понимаю в этом файле и подключается библиотека.
Заменил свои файлы ftd2xx.dll, ftd2xx.h, ftd2xx.lib на файлы из работающих проектов.
Ошибка не пропала.


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 16 2013, 13:58
Сообщение #4


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



1) Библиотека импорта создана заново. Вот так:
implib.exe -c ftd2xx.lib ftd2xx.dll
2) Вновь полученный файл ftd2xx.lib включен в проект.

Это всё. И скажите только, что не компилируется. sm.gif

Получите:
Прикрепленные файлы
Прикрепленный файл  PrGSMPower_2.rar ( 447.34 килобайт ) Кол-во скачиваний: 6
 
Go to the top of the page
 
+Quote Post
KARLSON
сообщение Aug 16 2013, 16:41
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



Так, расскажите последовательность действий.
Мои:
файл ftd2xx.dll скопировал в папку c:\Program Files (x86)\Borland\CBuilder6\Bin\
в командной строке прописал implib.exe -c ftd2xx.lib ftd2xx.dll. Появился файл ftd2xx.lib.
Переместил ftd2xx.lib в папку с проектом. Компилирую и те же ошибки.
Сравнил ваш файл и мой ftd2xx.lib - совпадают.

Я так понимаю, он где-то в самом проекте подключается?
//-----------------------------------------------------------------------------------------------------------------------------------

Всё. понял. Пока писал, гуглил и нашёл. Shift+F11, выбрать расширение lib и выбрать файл.
А файл ftd2xx.lib поставляется компанией FTDI и он совпадает с генерированным.

Странно, что в других рабочих проектах я такого не делал.
Спасибо за помощь a14.gif


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 16 2013, 16:44
Сообщение #6


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(KARLSON @ Aug 16 2013, 20:41) *
Так, расскажите последовательность действий.
Всё. понял. Пока писал, гуглил и нашёл. Shift+F11, выбрать расширение lib и выбрать файл.
А файл ftd2xx.lib поставляется компанией FTDI и он совпадает с генерированным.


Я же вам и файл проекта со вставленной либой в архив закатала. Почему бы вам было не скомпилировать присланное, вместо того, чтобы биться лбом об стенку?

Никаких Shift+F11 нажимать не надо - всё делается через меню стандартным образом: Project -> Add to Project... -> вколачиваете ftd2xx.lib и жмете OK. Точно так же добавляют в проект и все другие файлы. А если вы в последнем диалоге откроете "Files of type:", то будете удивлены обилием того, что можно еще включить в проект.
Go to the top of the page
 
+Quote Post
KARLSON
сообщение Aug 16 2013, 16:49
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



не. ваш пробовал, компилировал, работает. Но причину-то надо было понять)) Не обращаться же мне к вам с каждым новым проектом?)))
Shift+F11 то же самое. Горячие клавиши.

Сообщение отредактировал KARLSON - Aug 16 2013, 16:50


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 16 2013, 16:59
Сообщение #8


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(KARLSON @ Aug 16 2013, 20:49) *
не. ваш пробовал, компилировал, работает. Но причину-то надо было понять)) Не обращаться же мне к вам с каждым новым проектом?)))
Shift+F11 то же самое. Горячие клавиши.


Так я вам сразу ответила (2-е сообщение в теме):
Цитата(Xenia @ Aug 16 2013, 16:32) *
У вас ftd2xx.lib не включена в проект, а без нее dll-ки использовать нельзя.

Или вы под выражением "включить в проект" понимаете что-то другое?
Go to the top of the page
 
+Quote Post
KARLSON
сообщение Aug 16 2013, 17:19
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



Да, под этим я понимал записи в файлах с помощью include или pragma.


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 17 2013, 09:56
Сообщение #10


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



KARLSON, вы уж потом расскажите, заработала ли у вас FTDI-библиотека. А то компиляция это только пол дела, работоспособность библиотеки она не гарантирует.

Свой интерес проявляю т.к. сама на эту библиотеку глаз положила sm.gif. Много раз использовала FTDI-драйвер, но только, как виртуальный COM-порт, а с живыми функциями дело иметь не приходилось.
Go to the top of the page
 
+Quote Post
KARLSON
сообщение Aug 17 2013, 18:38
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 5-05-06
Из: Нижегородская обл.
Пользователь №: 16 819



Библиотека работает. По крайней мере в старых проектах. У меня есть проект устройство с тремя контроллерами соединённых последовательно по UART. И мне, бывает, нужно обновить прошивку. И я в гуи с помощью FTDI прошиваю последовательно все 3 контроллера. 2 проекта уже рабочих есть с этой библиотекой.


--------------------
Кризис - это не отсутствие денег, а отсутствие идей! Учитесь и никаких кризисов не будет.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 07:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.0148 секунд с 7
ELECTRONIX ©2004-2016