Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: MinGW работа с dll
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
misty_k
Здравствуйте!
(надеюсь в нужный раздел пишу...)
Скажу сразу, я полнейший ноль в вопросах программирования и с данным компилятором, MinGW, не работала ни разу. А уж тем более не решала такие задачи, как работа с dll...
Суть в следующем. Имеется некоторая динамическая билиотека .dll, файл .def, заголовочный файл .h и файл .с. Все это добро нужно для использования в Матлабе, через mex-файлы. (Это тоже для меня вновь)
Прочитала, чтобы выгрузить мою dll в lib, необходимо выполнить следующую команду в компиляторе:
Код
dlltool --def-input libnlopt-0.def --dllname libnlopt-0.dll --output-lib libnlopt-0.lib

Скачала с оф.сайта компилятор, установила, а что дальше делать не знаю...... (позор на мою седую голову)
Полазила по папочкам, посмотрела содержимое, нашла dlltool.exe, попыталась запустить - черный экран мелькнул на долю секунды. Конечно понимаю, что это уж слишком глупо, но ничего не поделать, глаза боятся - руки делают...
Пожалуйста, подскажите, что надо делать, грубо говоря какова будет моя последовательность действий.
Заранее спасибо и не подумайте пожалуйста, что я совсем глупая) Просто столкнулась неожиданно с такой проблемой, от которой очень-очень многое зависит.
SyncLair
Цитата(misty_k @ Apr 16 2013, 22:23) *
Полазила по папочкам, посмотрела содержимое, нашла dlltool.exe, попыталась запустить - черный экран мелькнул на долю секунды. Конечно понимаю, что это уж слишком глупо, но ничего не поделать, глаза боятся - руки делают...

ну чёрный экран -- это консоль привыкайте biggrin.gif

лучше если вы откроете far -- будете по папочкам бегать и команды набирать с опциями
misty_k
Цитата(SyncLair @ Apr 16 2013, 21:30) *
ну чёрный экран -- это консоль привыкайте biggrin.gif

лучше если вы откроете far -- будете по папочкам бегать и команды набирать с опциями

Привыкаем))) Немного разобралась куда писать и даже ошибку нашла в этой строчке. Только теперь вот вопрос: куда положить эти файлы, в частности .def и .dll, чтобы компилятор их увидел?
Tiro
Цитата(misty_k @ Apr 16 2013, 22:32) *
Привыкаем))) Немного разобралась куда писать и даже ошибку нашла в этой строчке. Только теперь вот вопрос: куда положить эти файлы, в частности .def и .dll, чтобы компилятор их увидел?

Консоль всегда можно открыть в Виндовз: кнопка Старт > Выполнить > cmd. Из нее запустить компилятор. И приложите ошибки, что в нее вывелись.
p.s. FAR тоже неплохо, если скрыть панели, то будет видно все в консоли.
misty_k
Сделала))) Теперь другая проблема: как правильно использовать gnumex для связи Mingw и Matlab? Нашла описание пошаговое. конечно на английском. Но дело до конца не доходит, при настройке gnumex из матлаба выскакивает ошибка:

может есть знающие люди, помогите пожалуйста разобраться с этой ошибкой, чтобы все наконец заработало...
Tiro
Цитата(misty_k @ Apr 17 2013, 22:16) *
Сделала))) Теперь другая проблема: как правильно использовать gnumex для связи Mingw и Matlab?

Лет 5 не брал в руки шашек и никогда не использовал gnumex.
Расскажу, как было сделано у нас. Программист написал некоторые функции для доступа к данным и скомпилировал их в динамическую библиотеку DLL при помощи Microsoft Visual C.
Для доступа к функциям DLL из Матлаба мне он дал саму DLL и сишный хидер .h Судя по всему хидер был нужен только чтобы мне было понятно, что он возвращает в своих функциях.
В самом Матлабе использовались функции loadlibrary, calllib и unloadlibrary.

Цепляю пару файлов в архиве для примера.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.