Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как сделать .dll, Как правильно использовать implib? 
:(
    Опции темы
BlowUp
Дата 28.2.2010, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 17.6.2009

Репутация: нет
Всего: нет



Доброго времени суток.

Обучаюсь работе на BC++C 6.0
Возникла необходимость подключить стороннею библиотеку fftw: есть несколько файлов, в т.ч. fftw.lib и fftw.h.
Как я уже выяснил мне необходимо создать .dll,с помощью ф-ии  implib.exe и подключить её к проекту.  

???:1) Конкретно в какую папку мне необходимо вставить fftw.lib, чтобы сработала implib
 
2) после того как будет получен .dll-файл как правильно подключить его к проекту, чтобы без проблем пользоваться библиотекой.


Это сообщение отредактировал(а) BlowUp - 28.2.2010, 15:41
PM MAIL   Вверх
jhonyxakep
Дата 28.2.2010, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Divide Et Impera
**


Профиль
Группа: Участник
Сообщений: 983
Регистрация: 7.4.2009
Где: Что, Когда?

Репутация: нет
Всего: 8



Цитата(BlowUp @  28.2.2010,  15:39 Найти цитируемый пост)
Возникла необходимость подключить стороннею библиотеку fftw: есть несколько файлов, в т.ч. fftw.lib и fftw.h.

Насколько я понимаю рядом с файлами уже должна лежать dll


Цитата(BlowUp @  28.2.2010,  15:39 Найти цитируемый пост)
2) после того как будет получен .dll-файл как правильно подключить его к проекту, чтобы без проблем пользоваться библиотекой.

Код

#include "fftw.h"
#pragma "fftw.lib"

PM MAIL ICQ   Вверх
bsa
Дата 1.3.2010, 00:27 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: нет
Всего: 196



судя по всему, fftw.lib это статическая библиотека. Формат статических библиотек MSVC и BCB несовместим. И implib не поможет, так как она из *.dll делает *.lib
PM   Вверх
BlowUp
Дата 1.3.2010, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 17.6.2009

Репутация: нет
Всего: нет



Цитата

Насколько я понимаю рядом с файлами уже должна лежать dll


Так и есть нашёл др. версию данной библиотеке (вроде подходящую для BC++B ) на
 Сайт библиотек для Фурье преобразования
там уже есть dll. только их 3: libfftw3f-3.dll, libfftw3f-3.dll  libfftw3-3.dll и  libfftw3l-3.dll
 для float, double и long double соответственно, и только один h-файл: fftw.h

Также в папке присутствуют 3 def-файла и 1 f-файл (названия аналогичны dll и h)

Если я правильно понимаю мне необходимо выбрать и использовать один из dll , а h-файл подходит для любого из dll. Если так, то в какую папку/директорию мне необходимо скопировать файлы, перед подключением их в проект???
Если можно поясните, зачем нужны f- и def-файлы.


Цитата

судя по всему, fftw.lib это статическая библиотека. Формат статических библиотек MSVC и BCB несовместим. И implib не поможет, так как она из *.dll делает *.lib


Наверное, так и есть только вот в FAQ (ссылка на который выше ) зачем указано следующее
Цитата

For Borland C++, you instead need to use Borland's implib program, via (thanks to M. Lenarczyk): 
     implib -a fftw3-3.lib libfftw3-3.dll
     implib -a fftw3f-3.lib libfftw3f-3.dll
     implib -a fftw3l-3.lib libfftw3l-3.dll


Это сообщение отредактировал(а) BlowUp - 1.3.2010, 10:02
PM MAIL   Вверх
bsa
Дата 1.3.2010, 13:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: нет
Всего: 196



Цитата(BlowUp @  1.3.2010,  10:00 Найти цитируемый пост)
Наверное, так и есть только вот в FAQ (ссылка на который выше ) зачем указано следующее

Не вижу противоречий. Я написал, что implib делает из dll библиотеку импорта. Что собственно в FAQ и описано.

Цитата(BlowUp @  1.3.2010,  10:00 Найти цитируемый пост)
Если так, то в какую папку/директорию мне необходимо скопировать файлы, перед подключением их в проект???
*.h файлы нужно поместить в папку, которая прописана в путях к headers (includes), *.dll в папку с проектом или в другую, которая прописана с переменной среды PATH, *.lib нужно в тот каталог, который прописан в путях к библиотекам (libraries). Узнать можно в настройках проекта.

PM   Вверх
BlowUp
Дата 2.3.2010, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 17.6.2009

Репутация: нет
Всего: нет



Цитата

Не вижу противоречий. Я написал, что implib делает из dll библиотеку импорта. Что собственно в FAQ и описано.


Приношу извинения, действительно ещё не всё  до конца понял.
Наверное последний вопрос:
Где должен лежать *.dll файл, чтобы сработал implib и появился *.lib - файл?

Это сообщение отредактировал(а) BlowUp - 2.3.2010, 14:58
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0668 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.