Ошибка компоновщика режима выпуска v8 с winsock

Эта тема стала побочной темой после того, как я принял ответ на свой последний вопрос, поэтому я помещу ее здесь как отдельную тему для аккуратности, и я считаю, что это сделает ее более полезной для других.

Я работаю над MS Visual Studio 2005.

Я создаю проект, используя v8 в режиме выпуска, и получаю сообщение об ошибке компоновщика, связанное с winsock, хотя библиотеки winsock уже находятся в моих дополнительных зависимостях.

Мой дополнительный список зависимостей одинаков как для режима выпуска, так и для режима отладки. Он отлично работает в режиме отладки, и я получаю ошибки компоновщика только в режиме выпуска.

вот моя дополнительная строка зависимостей:

Ws2_32.lib wininet.lib rasapi32.lib iphlpapi.lib Psapi.lib winmm.lib wsock32.lib msvcrt.lib $(SolutionDir)\external_libs\debug\v8.lib $(SolutionDir)external_libs\release\v8_base.lib $(SolutionDir)external_libs\release\v8_snapshot.lib

Большое спасибо за любую возможную помощь.

Обновление:

Я уменьшил зависимости до:

Ws2_32.lib Psapi.lib winmm.lib msvcrt.lib $(SolutionDir)\external_libs\release\v8.lib $(SolutionDir)external_libs\release\v8_base.lib

и все равно получить неразрешенные внешние:

1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __imp__freeaddrinfo@4
1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __imp__getaddrinfo@16
1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __set_abort_behavior

person Adrian Basheer    schedule 01.06.2011    source источник
comment
... сообщение об ошибке было бы хорошо. Учитывая, что если у вас есть ws2_32, это не будет Unresolved External.   -  person ta.speot.is    schedule 01.06.2011


Ответы (1)


У вас есть пути к папкам отладки и выпуска в списке зависимостей. Попробуйте заменить их на $(Configuration).

person PhilMY    schedule 01.06.2011
comment
Я сократил зависимости до: Ws2_32.lib Psapi.lib winmm.lib msvcrt.lib $(SolutionDir)\external_libs\release\v8.lib $(SolutionDir)external_libs\release\v8_base.lib и все еще получаю неразрешенные внешние файлы: 1> v8_base.lib(platform-win32.obj): ошибка LNK2001: неразрешенный внешний символ __imp__freeaddrinfo@4 1>v8_base.lib(platform-win32.obj): ошибка LNK2001: неразрешенный внешний символ __imp__getaddrinfo@16 1>v8_base.lib(platform- win32.obj): ошибка LNK2001: неразрешенный внешний символ __set_abort_behavior... - person Adrian Basheer; 01.06.2011