Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Alozavr  
#1 Оставлено : 19 февраля 2015 г. 22:14:24(UTC)
Alozavr

Статус: Новичок

Группы: Участники
Зарегистрирован: 06.02.2012(UTC)
Сообщений: 5

Добрый день!

столкнулся с проблемой при сборке проекта с библиотекой winpr возникает дублирование символов:
Цитата:
duplicate symbol _MultiByteToWideChar in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(unicode.o)
duplicate symbol _WideCharToMultiByte in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(unicode.o)
duplicate symbol _SCardEstablishContext in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardReleaseContext in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardReconnect in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardDisconnect in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardBeginTransaction in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardEndTransaction in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardTransmit in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardGetAttrib in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _g_rgSCardT0Pci in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _g_rgSCardT1Pci in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _GetSystemTime in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(sysinfo.o)
duplicate symbol _GetSystemTimeAsFileTime in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(sysinfo.o)
ld: 14 duplicate symbols for architecture armv7


При этом приходится добавлять флаг линковки -lc++, без него проект не собирается с ошибками
Цитата:
Undefined symbols for architecture armv7:
"std::runtime_error::what() const", referenced from:
vtable for CAException in CPROCSP
vtable for Asn1Exception in CPROCSP
vtable for CryptException in CPROCSP
vtable for Asn1DecodeException in CPROCSP
vtable for CAValidateException in CPROCSP
vtable for date_exception in CPROCSP
"std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::find(char const*, unsigned long, unsigned long) const", referenced from:
+[PaneViewController parseVersion:version_out:build_out:] in CPROCSP
и т.д.

Если убирать имплементацию функций из WinPR, то проект собирается, но видимо реализация в фрейймворке отличается и в памяти начинает твориться хаос.
Возможно уже кто-либо сталкивался с такими проблемами? Есть ли какие нибудь советы?

Отредактировано пользователем 19 февраля 2015 г. 22:17:39(UTC)  | Причина: Не указана

Offline Dmitry_Bokovikov  
#2 Оставлено : 20 февраля 2015 г. 11:24:25(UTC)
Dmitry_Bokovikov

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 29.01.2014(UTC)
Сообщений: 172
Откуда: Москва

Поблагодарили: 18 раз в 17 постах
Автор: Alozavr Перейти к цитате
Добрый день!

столкнулся с проблемой при сборке проекта с библиотекой winpr возникает дублирование символов:
Цитата:
duplicate symbol _MultiByteToWideChar in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(unicode.o)
duplicate symbol _WideCharToMultiByte in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(unicode.o)
duplicate symbol _SCardEstablishContext in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardReleaseContext in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardReconnect in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardDisconnect in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardBeginTransaction in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardEndTransaction in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardTransmit in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _SCardGetAttrib in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _g_rgSCardT0Pci in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _g_rgSCardT1Pci in:
lalala/CPROCSP.framework/readers/librdrpcsc_empty.o
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(smartcard.o)
duplicate symbol _GetSystemTime in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(sysinfo.o)
duplicate symbol _GetSystemTimeAsFileTime in:
lalala/CPROCSP.framework/CPROCSP
lalala/winpr/libwinpr/Debug-iphoneos/libwinpr.a(sysinfo.o)
ld: 14 duplicate symbols for architecture armv7


При этом приходится добавлять флаг линковки -lc++, без него проект не собирается с ошибками
Цитата:
Undefined symbols for architecture armv7:
"std::runtime_error::what() const", referenced from:
vtable for CAException in CPROCSP
vtable for Asn1Exception in CPROCSP
vtable for CryptException in CPROCSP
vtable for Asn1DecodeException in CPROCSP
vtable for CAValidateException in CPROCSP
vtable for date_exception in CPROCSP
"std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::find(char const*, unsigned long, unsigned long) const", referenced from:
+[PaneViewController parseVersion:version_out:build_out:] in CPROCSP
и т.д.

Если убирать имплементацию функций из WinPR, то проект собирается, но видимо реализация в фрейймворке отличается и в памяти начинает твориться хаос.
Возможно уже кто-либо сталкивался с такими проблемами? Есть ли какие нибудь советы?


Здравствуйте, я хотел бы уточнить, какой версией CSP Вы пользуетесь и о каком именно хаосе в памяти идет речь?
Offline Alozavr  
#3 Оставлено : 21 февраля 2015 г. 21:58:46(UTC)
Alozavr

Статус: Новичок

Группы: Участники
Зарегистрирован: 06.02.2012(UTC)
Сообщений: 5

добрый день.
Пользуюсь сборкой 4.0.9518, iOS 8.1, xcode 6.
если убирать дублируемые функции, то приложение падает с SIGABRT. в консоли: object was modified after it has been freed.

UPD:
Проблема SIGABRT в принципе стала понятна. Вызывается метод не из фреймворка, а с убранной имплементацией.
Только вот если подключить фреймворк к библиотеке чтобы оттуда функции дергать, то получаем просто огромную цепочку редефайнов в хедерах CPROCSP.

UPD2:
WinPR Взята из проекта FreeRDP

Отредактировано пользователем 24 февраля 2015 г. 15:21:02(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.