|
|
|
VVV13 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 30.5.2013 Репутация: нет Всего: нет |
compaq 6.5, пакет Multiple Precision Computation, David M. Smith, f90-библиотека FM
FM-пакет состоит из 3-х файлов (в порядке ссылок друг на друга): FMSAVE.f95 FM.f95 FMZM90.f95 я положил их в этом порядке в один файл и в compaq 6.5 сделал две версии (файлы) библиотеки - *.dll и *.lib. Положил обе версии в директорию Debug и туда, где исходник программы. Компиляция тест-программы ни для той ни для другой версии не идет: "Error in opening the Library module file." Если положить все mod-модули в директорию Debug или сложить все сорсы библиотеки в правильном порядке в один файл с тест-программой, то все нормально транслируется и считается. Как правильно сделать и подключить библиотеку? Библиотека довольно большая и долго транслируется. Спасибо |
|||
|
||||
FCM |
|
|||
Опытный Профиль Группа: Участник Сообщений: 461 Регистрация: 30.3.2009 Репутация: 8 Всего: 9 |
Так... счас попробуем вспомнить, что к чему...
Если исходники библиотеки содержат модули, то при компиляции помимо прочего должны создаваться .mod-файлы. Таковые должны быть доступны компилятору при компиляции приложений, использующих библиотеку. В настройках Visual Studio можно указать какие директории автоматически просматриваются 1) фортран-компилятором на предмет включаемых (include) тестовых файлов и модулей 2) компоновщиком на предмет lib-файлов. Т.е., если речь идет о статической библиотеке - строишь ее в отдельном проекте, mod и lib-файлы кидаешь в директории, назначенные для вышеуказанного автоматического просмотра. Если в библиотечный модуль (или в программу, использующую библиотеку) кинуть директиву !DEC$OBJCOMMENT LIB: "libname" с именем библиотеки, то возможно указанных действий будет достаточно. Если без этой чудесной директивы, то возможно нужно в свойствах проекта указать полный путь к ней. В случае динамической библиотеки с модулем, насколько помню, также создаются файлы mod, lib и файл dll. В случае так называемого неявного связывания DLL, насколько помню, для первых двух должно быть справедливо все, что касается и статических библиотек, а послдений должен быть доступен на этапе выполнения - т.е. его, например, можно кинуть к exe-файлу. Это сообщение отредактировал(а) FCM - 3.6.2013, 10:11 |
|||
|
||||
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Fortran | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |