gcc опции компилятора и нестыковка либ |
Здравствуйте, гость ( Вход | Регистрация )
gcc опции компилятора и нестыковка либ |
Iron Bug |
10.2.2012, 8:56
Сообщение
#11
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
я аськой уже сто лет не пользовалась. я вот для нужд закупки оборудования её сегодня установила с утра, ибо нужно было достучаться до одной конторы. а так у меня её даже на компе не было. но я её не хочу запускать: там сразу все полезут общаться, а мне некогда.
я не знаю готовых решений для сборки OpenSSL. он всегда собирался через задницу и каждый раз это шаманство, но мне никогда не приходило в голову запоминать эти настройки. я каждый раз экспериментально собираю все пакеты, шарюсь по сети и ищу хинты по сборке. |
|
|
soMan |
19.2.2012, 12:41
Сообщение
#12
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 30.8.2011 Пользователь №: 2839 Спасибо сказали: 0 раз(а) Репутация: 0 |
Эх, сколько бьюсь, пока все без толку. Появилось два вопроса:
1. Требуется ли каждый раз пересобирать libCURL после пересборки OpenSSL? (в курле указываю юзать динамический OpenSSL) 2. Посмотрел либы в Dependency Walker. Версии MSVCRT совпадают и других стандартных либ тоже. Затем сделал профилирование (она же насколько понял и отладка) и получил ошибочки при совершении запросов на защищенные ресурсы. Цитата ... GetProcAddress(0x00400000 [APP.EXE], "_OPENSSL_isservice") called from "APP.EXE" at address 0x004A5D45 and returned NULL. Error: (127). .. GetProcAddress(0x76910000 [KERNEL32.DLL], "CloseToolhelp32Snapshot") called from "APP.EXE" at address 0x00512212 and returned NULL. Error: (127).. ... MSDN об ошибке: Цитата ERROR_PROC_NOT_FOUND 127 (0x7F) The specified procedure could not be found. В целом наводит на мысль, что не может он адреса эспортируемых функций из дллки вытащить. Какие меры можно предпринять, чтобы стать еще ближе к причине проблемы? Может, имена экспортируемых функций не совпадают (кривой экспорт?) или еще что-то? |
|
|
soMan |
19.2.2012, 18:36
Сообщение
#13
|
Студент Группа: Новичок Сообщений: 11 Регистрация: 30.8.2011 Пользователь №: 2839 Спасибо сказали: 0 раз(а) Репутация: 0 |
Эх, сколько бьюсь, пока все без толку. Появилось два вопроса:
1. Требуется ли каждый раз пересобирать libCURL после пересборки OpenSSL? (в курле указываю юзать динамический OpenSSL) 2. Посмотрел либы в Dependency Walker. Версии MSVCRT совпадают и других стандартных либ тоже. Затем сделал профилирование (она же насколько понял и отладка) и получил ошибочки при совершении запросов на защищенные ресурсы. Цитата ... GetProcAddress(0x00400000 [APP.EXE], "_OPENSSL_isservice") called from "LIBEAY32.DLL" at address 0x004A5D45 and returned NULL. Error: (127). .. GetProcAddress(0x76910000 [KERNEL32.DLL], "CloseToolhelp32Snapshot") called from "LIBEAY32.DLL" at address 0x00512212 and returned NULL. Error: (127).. ... MSDN об ошибке: Цитата ERROR_PROC_NOT_FOUND 127 (0x7F) The specified procedure could not be found. В целом наводит на мысль, что не может он адреса экспортируемых функций из дллки вытащить. Какие меры можно предпринять, чтобы стать еще ближе к причине проблемы? Может, имена экспортируемых функций не совпадают (кривой экспорт?) или еще что-то? Смотрим Таблица экспорта libeay32.dll и на строке 4051 видим: Цитата OPENSSL_isservice (Ordinal: 4 048, Entry Point RVA: 16c0h (5 824)) Вначале черточки нету. WTF? Не уж то ли прибегнуть придется к -fno-leading-underscore?Эх, сколько бьюсь, пока все без толку. Появилось два вопроса: 1. Требуется ли каждый раз пересобирать libCURL после пересборки OpenSSL? (в курле указываю юзать динамический OpenSSL) 2. Посмотрел либы в Dependency Walker. Версии MSVCRT совпадают и других стандартных либ тоже. Затем сделал профилирование (она же насколько понял и отладка) и получил ошибочки при совершении запросов на защищенные ресурсы. Цитата ... GetProcAddress(0x00400000 [APP.EXE], "_OPENSSL_isservice") called from "LIBEAY32.DLL" at address 0x004A5D45 and returned NULL. Error: (127). .. GetProcAddress(0x76910000 [KERNEL32.DLL], "CloseToolhelp32Snapshot") called from "LIBEAY32.DLL" at address 0x00512212 and returned NULL. Error: (127).. ... MSDN об ошибке: Цитата ERROR_PROC_NOT_FOUND 127 (0x7F) The specified procedure could not be found. В целом наводит на мысль, что не может он адреса экспортируемых функций из дллки вытащить. Какие меры можно предпринять, чтобы стать еще ближе к причине проблемы? Может, имена экспортируемых функций не совпадают (кривой экспорт?) или еще что-то? Смотрим Таблица экспорта libeay32.dll и на строке 4051 видим: Цитата OPENSSL_isservice (Ordinal: 4 048, Entry Point RVA: 16c0h (5 824)) Вначале черточки нету. Мжет ли быть эта черточка виной и почему так могло произойти? |
|
|
Текстовая версия | Сейчас: 29.3.2024, 11:39 |