Kabaev Sergey |
Отправлено: 16.11.2004, 15:12 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 3
|
Добрый день!
Есть набор классов для хранения и работы с данными. Эти класс сделаны с использованием STL.
Когда решил вынести эти классы в отдельную LIB, то обнаружил, что при сборке приложения использующего эту библиотеку вылетают ошибки unresolved external на все функции из библиотеки, в которых в качестве параметров или возвращаемых значений есть stl-шаблоны std::map, std::vector и т.п.
Когда подключаю нужные мне классы к проекту напрямую (не включая их в lib-файл), то приложение нормально линкуется.
В чем дело, кто-нибудь может помочь?
К сожалению, не могу отказаться от lib-ов. Проект большой и линковщик начинает сыпать ошибками при добавлении новых модулей. Именно поэтому и решил вывести часть исходников в Lib.
С уважением,
Кабаев Сергей
Отредактировано Kabaev Sergey — 16/11/2004, 16:15 |
|
Asher |
Отправлено: 16.11.2004, 17:42 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Поищите на RSDN статью
"Заметка о некоторых особенностях использования STL в DLL"
|
|
Kabaev Sergey |
Отправлено: 17.11.2004, 10:39 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 3
|
Спасибо |
|
Kabaev Sergey |
Отправлено: 17.11.2004, 12:11 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 3
|
Непонятно. В упомянутой статье идет речь о ошибка связанных с наличием в приложении одновременно двух работающих менеджеров памяти. Но возникающие ошибки, если они будут, относятся к runtime. Каким макаром они могут вызывать ошибки при сборке приложения?
|
|
Asher |
Отправлено: 17.11.2004, 14:41 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Здравствуйте.
Сорри. Наводку дал неправильную. Домой убегал и невнимательно вопрос прочитал.
Только что сделал дрозофиллу — у меня на пятом Buildere
std::string TestStr(std::string e_sStr); и
std::vector TestVect(std::vector e_vctMas);
из lib отрабатывают совершенно нормально.
и Debug и Release
|
|
Asher |
Отправлено: 17.11.2004, 14:45 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Забыл прицепить
|
|
olegenty |
Отправлено: 17.11.2004, 15:48 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
у меня другая проблема — компашка с инсталлюком была битая, часть stl (некоторые *.c файлы) на некоторое число символов — мусор. обидно, вместо map/vector так и пользуюсь TList
а STLPort поставить не смог — не компилится по инструкции.
|
|
Asher |
Отправлено: 17.11.2004, 15:57 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
На какой Builder? от 5-го или от 6-го.
могу попробовать по почте кинуть.
Кстати в 6-м и так STLPort
|
|