Whole Program Optimization - LNK2001 Error (VS2017)
От: RainBoy  
Дата: 17.07.19 16:16
Оценка:
Добрый день, коллеги

Имеется огромный солюшн на VS2013, который портируется на UWP VS2017
В одном из C++ проектов используется Apache Thrift

У меня имеется VS2013 проект для сборки Thrift, который я портировал для VS2017 и который прекрасно сибирается
Настройки прооекта Thrift, Release:

— Whole program Optimization: Use Link Time Code Generation (from General page)
— /O2
— Intrinsic functions: /Oi
— Whole program optimization: Yes /GL (From C++ page)
— Enable Function-level linking: Yes /Gy

Полученный lib файл я могу без проблем использовать в другом проекте, если там выбран пункт Whole program Optimization: Disabled (from General page)
при смене оптимизации на "Use Link Time Code Generation" я получаю множество ощибок линковщика


Severity Code Description Project File Line Suppression State
Error LNK2001 unresolved external symbol CRYPTO_set_dynlock_create_callback RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol SSL_peek RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol SSL_get_shutdown RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol SSL_get_wbio RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol SSLv3_method RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol SSL_connect RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol sk_num RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol X509_get_ext_d2i RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1
Error LNK2001 unresolved external symbol TLSv1_method RealtimeDataServer C:\Projects\Visual Studio\FlexVS2017\Source\InspectionServer\RealtimeDataServer\libthrift.lib(TSSLSocket.obj) 1

Вопрос — что ля делаю не так?
Проект на 2013 с прошлой версией thrift компилируется
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.