У меня нет значительного опыта работы с C ++, но недавно мне пришлось участвовать в проекте с частью C ++ (фактически, модулями apache).
Сейчас я просто пытаюсь создать какой-то существующий очень старый код и сталкиваюсь с очень странной проблемой, когда компоновщик VC ++ не может найти одну конкретную функцию в библиотеке apache (при просмотре остальных).
Код выглядит следующим образом (взят из тривиального примера, созданного специально для решения этой проблемы):
ap_rputs(ap_gm_timestr_822(r->pool, time(NULL)), r);
(это должно просто напечатать текущую дату, но это не имеет большого значения)
И ошибка, которую я получаю, выглядит так:
error LNK2019: unresolved external symbol _ap_gm_timestr_822@12 referenced in function _hello_handler
Теперь о странной части: эта функция фактически существует в библиотеке, с которой я ссылаюсь, но ее имя символа там _ap_gm_timestr_822 @ 8 (не @ 12 , но @ 8 в конце).
Я пытался играть практически со всеми возможными свойствами компилятора / компоновщика в MSVC ++ - к сожалению, безрезультатно.
Может ли эта проблема быть связана с тем, что библиотека (которая является частью дистрибутива apache 1.3) построена с другим / более старым / ... компилятором, чем я использую? В настоящее время я использую MS VC ++ Express 2008. Если это так, кто-нибудь знает, что можно сделать, чтобы обойти эту проблему?