Сборка кроссплтаформенных либ под винду
От: Evgeniy Skvortsov Россия  
Дата: 21.02.18 21:33
Оценка: +3
Не уверен что вопрос для данного раздела, но не смог сделать правильный выбор.

Вопрос о сборке opensorce проектов в виде библиотек под windows.

Вкратце мой однажды внезапно успешный опыт. Как-то давно, делал я ради фана приложение работающее с файлами некой игры.
По мере развития оказалось, что часть данных этой игры может быть пожата zip`ом.
Пришлось подключать библиотеку zlib (если не ошибаюсь) для корректной поддержки такого вида данных.

После скачивания исходников меня настигла тоска и уныние. Поскольку сборка этого вашего хваленого опенсорса под винду — это Адъ и Израиль!
И что-то я психанул, создал в MSVC пустой проект для .lib файла, закинул туда все .h и .c файлы из исходников zlib. Подробностей уже не помню, но без всякого гемора MSVC собрал рабочую библиотеку, которую я успешно дальше использовал в своей программке для распаковки пожатых данных.

И вот сейчас, когда судьба опять подкинула сюрприз, в виде необходимости использовать опенсорсную либу, но которая без танцев с 3-мя бубнами одновременно нормально собирается только под линукс — у меня вопрос: А есть ли какая-то рабочая схема, по которой можно собрать любой кроссплатформенный опенсорс в виде нативной MSVC бибилиотеки.

В оригинале OpenSSL собирается каким-то привычным для опенсорс извратным способом.

Но я видел готовые сборки собранные для MSVC и имеющие привычный набор .lib для разных ключей сборки проектов /MTD /MT ... ещё чего-то там.

В общем хочется собирать библиотеки просто с помощью MSVC, без кучи всякого хлама навроде ActivePerl, MinGW, tclshl, bash скриптов и прочего зоопарка...

Или это в общем случае невозможно?

Просто я в последний раз видел такую систему сборки, которая после скачивания репозитария с гитхаба — некомпилябельна вообще. Исходники сперва нужно причесать километровыми скриптами, под определенную платформу, которые создадут ещё кучу файлов .h и .c, и только после этого можно запускать сборку проекта.
Я конечно далек от мира промышленного ПО, но на мой взгляд это какой-то ужас!
Или это норма в наше дни?

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

Там две команды сидит? Или там вундеркинды которые могут всё? На всех языках мира? и по ходу дела, в качестве хобби, каждый из них по субботам пишет свою систему сборки и свой скриптовый язык.
Re: Сборка кроссплтаформенных либ под винду
От: reversecode google
Дата: 21.02.18 22:03
Оценка:
ES>В общем хочется собирать библиотеки просто с помощью MSVC, без кучи всякого хлама навроде ActivePerl, MinGW, tclshl, bash скриптов и прочего зоопарка...
ES>Или это в общем случае невозможно?

в базовой версии openssl невозможно
в базовой нету того виндовс программиста который бы занимался такой поддержкой

ES>Или это норма в наше дни?


норма
мало проэтов которые поддерживаются и виндовс программистами
и еще меньше которые бы под винду писали опенсорс
опенсорс пришел из мира юникс — отсюда и все неудобности в либах итд

ES>Я вообще поражаюсь, а как они это пишут? Скрипты для преобразования исходников в компилябельную версию по объему больше чем исходники самого проекта.


руками

ES>Там две команды сидит? Или там вундеркинды которые могут всё? На всех языках мира? и по ходу дела, в качестве хобби, каждый из них по субботам пишет свою систему сборки и свой скриптовый язык.


с миру по нитке, каждый по чуть чуть и получается огогоо

ps зачем брать openssl ? возьмите любую другую либу

я вообще удивляюсь когда спрашиваешь у народа — а зачем вы этот openssl тяните себе в проект ?
— ну как же?! создаем зашифрованный канал связи!
после этой фразы я куею, и отвечаю что для этого достаточно простенького DH/RSA/AES256
я бы еще понял если это использовалось для https как сервер или клиент для совместимости
но для своих каналов связи городить такие трехматовые конструкции на openssl это пять
Re[2]: Сборка кроссплтаформенных либ под винду
От: Evgeniy Skvortsov Россия  
Дата: 21.02.18 22:16
Оценка:
Здравствуйте, reversecode, Вы писали:

R>в базовой нету того виндовс программиста который бы занимался такой поддержкой


Ну как нет? Я же скачивал уже собранный OpenSSL под винду с либами под MSVC
И даже рецепт есть сборки моей требуемой либы через MSVC, но он не сработал, то ли старый слишком, то ли ещё что.
Я фиксил ошибки сборки пока ума хватило, потом зашел в тупик, просто не знаю, что с теми ошибками делать дальше.

R>я вообще удивляюсь когда спрашиваешь у народа — а зачем вы этот openssl тяните себе в проект ?


Да это не я тяну, это либа которую я собираю хочет OpenSSL.
Re[3]: Сборка кроссплтаформенных либ под винду
От: reversecode google
Дата: 21.02.18 22:21
Оценка:
я имел ввиду тех программистов которые бы поддерживали файлы проектов студии

а поддерживают они mingw
потому у них все собирается
msvc вроде как собирается
но никто не контролирует

ну тогда надо с ошибками где на чем не собирается приходить на форум
а то конструктива не будет
Re[4]: Сборка кроссплтаформенных либ под винду
От: Evgeniy Skvortsov Россия  
Дата: 21.02.18 22:38
Оценка:
Здравствуйте, reversecode, Вы писали:

R>а поддерживают они mingw

R>потому у них все собирается

Да даже с MinGW проблемы — с неправильными ключами не собирается. Какие правильные — ХЗ. Мануалов в инете не мало, у всех разные ключи, пока все перепробуешь — охренеешь.
И каждый утверждает, что его вариант верный. Может он и верный был пару лет назад. Актуальной информации 0.
Разработчики вообще игнорируют сборку. И это понятно, правильную сборку они продают за огромные бабки. А тебе достается куча .h и .c файлов. И делай с ним всё что хочешь.
Это не проблема с миру по нитке, это целенаправленная политика.

Что бы не быть голословным — Sqlcipher. Я хоть её и собрал, но нормально она так и не заработала.
На сайт производителей написано — хотите собранные либы под все платформы, оттестированные, с поддержкой и прочими ништяками — давайте кучу бабла.
Нет — вон там исходники, трахайтесь с ними как хотите.

Какой-то чувак из рунета предлагал свои наработки в открытом доступе для сборки этой либы под MSVC, но то ли инфа неактуальная, то ли всё это брехня — не собирается. Валится куча ошибок, часть удалось устранить, остальные — не знаю что с этим делать.


R>ну тогда надо с ошибками где на чем не собирается приходить на форум

R> а то конструктива не будет

В таких вопросах не будет конструктива, если только это не супер популярная бибилиотека.
Re[5]: Сборка кроссплтаформенных либ под винду
От: reversecode google
Дата: 21.02.18 22:46
Оценка:
это все эмоции
выхлоп лога в чем там не собирается, будет ?

в мингв оно всегда должно собраться, так как мингв тот же гцц
главное брать правильную версию и его сопутствующие утилиты
Re[6]: Сборка кроссплтаформенных либ под винду
От: Evgeniy Skvortsov Россия  
Дата: 21.02.18 22:59
Оценка:
Здравствуйте, reversecode, Вы писали:

R>это все эмоции


Тут ты прав.

R>выхлоп лога в чем там не собирается, будет ?


Да собрал я уже, два дня прошло.

R>в мингв оно всегда должно собраться, так как мингв тот же гцц

R>главное брать правильную версию и его сопутствующие утилиты

Проблема в нюансах, тут
Автор: Evgeniy Skvortsov
Дата: 21.02.18
более подробно описал.

Ради интереса завтра закину ошибку, интересно просто, эти ошибки кому-то о чем-то говорят?
Отредактировано 21.02.2018 23:01 Evgeniy Skvortsov . Предыдущая версия .
Re: Сборка кроссплтаформенных либ под винду
От: Zhendos  
Дата: 22.02.18 01:15
Оценка: 1 (1) +1
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Не уверен что вопрос для данного раздела, но не смог сделать правильный выбор.



ES>В общем хочется собирать библиотеки просто с помощью MSVC, без кучи всякого хлама навроде ActivePerl, MinGW, tclshl, bash скриптов и прочего зоопарка...


ES>Или это в общем случае невозможно?



В общем случае конечно невозможно, каждый естественно может написать
свою систему сборки и задействовать в своем проекте,
но есть такие системы как https://conan.io/ и https://github.com/Microsoft/vcpkg
там уже собранные библиотеки для популярных проектов, которые можно подключить
единообразным способом.

ES>Я вообще поражаюсь, а как они это пишут? Скрипты для преобразования исходников в компилябельную версию по объему больше чем исходники самого проекта.

ES>Там две команды сидит? Или там вундеркинды которые могут всё? На всех языках мира? и по ходу дела, в качестве хобби, каждый из них по субботам пишет свою систему сборки и свой скриптовый язык.

Если имеется ввиду configure и Makefile, то эти файлы генерируются из совсем небольших файлов.
А так да, после того как эти скрипты сгенерированы из configure.in/configure.ac и Makefile.am
архив с исходным кодом получается довольном большим, это одна из причин почему cmake стал таким популярным.
Отредактировано 22.02.2018 9:45 Zhendos . Предыдущая версия .
Re[2]: Сборка кроссплтаформенных либ под винду
От: Evgeniy Skvortsov Россия  
Дата: 22.02.18 01:36
Оценка:
Здравствуйте, Zhendos, Вы писали:

Z>Если имеется ввиду configure и Makefile, то эти файлы генерируются из совсем небольших файлов.

Z>А так да, после того как эти скрипты сгенерированы из configure.in/configure.ac и Makefile.am

Ну да, на моем небольшом опыте, даже эти configure тормозятся из-за фатал ерор.
Что бы не быть голословным, тот же sqlcipher не собирается, пока ему не задать опцию -disable_tcl
Пишу по памяти, но смысл в том, что по умолчанию сборка обрабатывается какими-то tcl скриптами. И на этих скриптах возникает ошибка. Что она означает я ХЗ.

Там ошибка типа "TK_FLOAT — значение не найдено". Где не найдено? в каком месте не найдено? в какой программе не найдено? На каком языке это всё написано?
Там скрипт размером примерно 65 Кб. И неизвестно что он ещё вызывает для своей работы. Попробуй найди в нем, где там что не найдено.

Z>архив с исходным кодом получается довольном большим, это одна из причин почему cmake стал таким популярным.


Тут не понятно
Re[3]: Сборка кроссплтаформенных либ под винду
От: Zhendos  
Дата: 22.02.18 10:51
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Здравствуйте, Zhendos, Вы писали:


Z>>Если имеется ввиду configure и Makefile, то эти файлы генерируются из совсем небольших файлов.

Z>>А так да, после того как эти скрипты сгенерированы из configure.in/configure.ac и Makefile.am

ES>Ну да, на моем небольшом опыте, даже эти configure тормозятся из-за фатал ерор.

ES>Что бы не быть голословным, тот же sqlcipher не собирается, пока ему не задать опцию -disable_tcl
ES>Пишу по памяти, но смысл в том, что по умолчанию сборка обрабатывается какими-то tcl скриптами. И на этих скриптах возникает ошибка. Что она означает я ХЗ.
ES>Там ошибка типа "TK_FLOAT — значение не найдено". Где не найдено? в каком месте не найдено? в какой программе не найдено?

Вы не совсем правильно понимаете ситуацию, "--disable-something" означает выключение поддержки чего-то
в проекте.

Никто сборку никаким "tcl" не обрабатывает. В данном случае скорее всего выключает
в проекте возможность компиляции расширения для языка TCL, позволяющего работать
с этим sqlcipher на языке tcl. Если вы не выключаете эту возможность, то "configure" будет искать
библиотеки, утилиты нужные для компиляции расширения tcl. Обычно "configure" пишет краткую ошибку,
и что-нибудь типа см. config.log для полного понимания ситуации, в этом или аналогичном файле обычно
и указано какая именно фича системы проверялось и что именно сломалось.

> На каком языке это всё написано?


posix shell

ES>Там скрипт размером примерно 65 Кб. И неизвестно что он ещё вызывает для своей работы. Попробуй найди в нем, где там что не найдено.


Вообще configure файл sqlipper судя по github 443K, а вот "исходный" код configure.ac 24K,
не мало, но и 24K не много. Вся идея autconf/automake что для своей работы он требует минимум —
/bin/sh совместимый shell и еще по мелочи, то есть заработает почти на любом *nix с минимум
установленного ПО.


Z>>архив с исходным кодом получается довольном большим, это одна из причин почему cmake стал таким популярным.


ES>Тут не понятно


Что непонятного configure 443K vs CMakeLists.txt в 4K, по-моему здесь все понятно.
Да в отличии от configure, на *nix системе теперь должен быть установлен cmake,
но этим можно пожертвовать плюс к этому windows поддержка из коробки.

Но вообще непонятно зачем вам нужен configure, вы же на Windows собираете?
Вся идея autoconf/automake это работа на *nix ОС, где они работают из коробки,
в windows заработает разве что в windows 10 с включенной linux подсистемой.

Но разработчики sqlcipher позаботились об этом и предоставили nmake файл,
разве nmake /F Makefile.msc в консоли visual studio не работает?
Re: Сборка кроссплтаформенных либ под винду
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.02.18 13:42
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Я вообще поражаюсь, а как они это пишут? Скрипты для преобразования исходников в компилябельную версию по объему больше чем исходники самого проекта.


Эти скрипты, их рожает специально обученная тулза.

Просто в юнихе все, что нужно этой тулзе и рожденной ей скриптам либо есть в системе из коробки, либо ставится легко и без усилий. А в венде, наоборот, всего этого обычно нет, и поставить непросто.
Re[2]: Сборка кроссплтаформенных либ под винду
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.02.18 13:46
Оценка: +1
Здравствуйте, reversecode, Вы писали:

R>я вообще удивляюсь когда спрашиваешь у народа — а зачем вы этот openssl тяните себе в проект ?

R>- ну как же?! создаем зашифрованный канал связи!
R>после этой фразы я куею, и отвечаю что для этого достаточно простенького DH/RSA/AES256

И правильно делают, что берут. Еще не хватало, чтобы они делали самодельные криптопротоколы на базе перечисленных тобой кирпичиков. Я представляю себе, чего они там нагородят. Причем лучше бы, если бы они не выпендривались, и брали TLS в виде готового протокола. Чтобы делать не так, надо иметь ОЧЕНЬ серьезные причины.
Re: Сборка кроссплтаформенных либ под винду
От: sergey2b ЮАР  
Дата: 22.02.18 13:48
Оценка:
как собирать OpenSSL под винду можно найти в clamav проекте
он OpenSSL собирают для win версии у себя
Re: Сборка кроссплтаформенных либ под винду
От: m2l  
Дата: 22.02.18 15:36
Оценка: +1
Здравствуйте, Evgeniy Skvortsov, Вы писали:

Рыночные отношения, ты заинтересован больше авторов библиотеки в её использовании и прилагаешь больше усилий.

ES>После скачивания исходников меня настигла тоска и уныние. Поскольку сборка этого вашего хваленого опенсорса под винду — это Адъ и Израиль!

ES>И что-то я психанул, создал в MSVC пустой проект для .lib файла, закинул туда все .h и .c файл....
Вообще это самый универсальный путь. Хотя требующий умения копаться в исходниках и расставлять заглушки, которые проэмулируют posix/linux/gcc api/специфику.
Но именно с zlib тебе сильно повезло, эта одна из наименее проблемных в плане сборки под windows библиотек из всего, что я видел.

ES>В оригинале OpenSSL собирается каким-то привычным для опенсорс извратным способом.

Тут ты не прав. Есть самый простой путь — прочитать INSTALL.W64 — в кросплатформенных бибилиотеках как правило в корне лежит что-то типа INSTALL/README/BUILD где написано, что надо сделать, что бы собрать её под целевую платформу. В случае с openssl всё очень просто.

ES>Но я видел готовые сборки собранные для MSVC и имеющие привычный набор .lib для разных ключей сборки проектов /MTD /MT ... ещё чего-то там.

Если будешь следовать INSTALL.W64 именно это и получишь. Там нужно поставить только Perl. Делов минут на двадцать, с учетом компиляции.

ES>В общем хочется собирать библиотеки просто с помощью MSVC, без кучи всякого хлама навроде ActivePerl, MinGW, tclshl, bash скриптов и прочего зоопарка...

Даже монструозный Qt требует всего-то три инсталятора: python/ruby и perl.

ES>Или это в общем случае невозможно?

Да невозможно. Компиляторы через всякие расширения предоставляют исходному коду очень ограниченную информацию о окружении в котором он собирается. В частности вообще нет никакой информации о внешних библиотеках, с которыми мы можем компилироваться. К примеру openssl может интегрироваться с библиотекой kerberos для реализации какой-то части своей функциональности. Но в языке С нет средств для условной компиляции кусков кода в зависимости от наличия у тебя этой самой библиотеки. Поэтому и требуются внешние инструменты вроде bash/perl и т.д. Они решают задачу условной компиляции, которую нельзя решить средствами языка или компилятора.

ES>Я вообще поражаюсь, а как они это пишут? Скрипты для преобразования исходников в компилябельную версию по объему больше чем исходники самого проекта.

Там скрипты довольно тривиальные. А люди что непосредственно пилят эти либы уже просто привыкли.

ES>Там две команды сидит? Или там вундеркинды которые могут всё? На всех языках мира? и по ходу дела, в качестве хобби, каждый из них по субботам пишет свою систему сборки и свой скриптовый язык.

Пример с Qt выше. Внешних зависимостей мало, просто у разных библиотек они разные.
Re: Сборка кроссплтаформенных либ под винду
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 22.02.18 16:59
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Вопрос о сборке opensorce проектов в виде библиотек под windows.

Начнём с того, что "исходники открыты, бери и исправляй))" и заканчивая "у всех, всё работает". Нужно выучить это наизусть прежде чем соваться в опенсорус.
ES>Или это норма в наше дни?
Это норма. За не норму надо также платить.
ES>Я вообще поражаюсь, а как они это пишут? Скрипты для преобразования исходников в компилябельную версию по объему больше чем исходники самого проекта.
Ты как-то неверно рассуждаешь. Они для себя сделали либу в продукт и поделились им, т.е. это твоя проблема если ты не можешь это собрать. Другой вопрос, если инструмент делали для всех изначально...
ES>Там две команды сидит? Или там вундеркинды которые могут всё? На всех языках мира? и по ходу дела, в качестве хобби, каждый из них по субботам пишет свою систему сборки и свой скриптовый язык.
Им захотелось — они сделали, твой выбор — либо взять и заточить под себя, либо написать самому то, что тебе надо, можно ещё связатсья с автором и попросить его сделать полезное дело за $$$.
Sic luceat lux!
Re: Сборка кроссплтаформенных либ под винду
От: c-smile Канада http://terrainformatica.com
Дата: 22.02.18 20:10
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Не уверен что вопрос для данного раздела, но не смог сделать правильный выбор.


ES>Вопрос о сборке opensorce проектов в виде библиотек под windows.


И не только под Windows кстати.

На самом деле в С/С++ чертовски не хватает чего-то типа #include source "....c"

(некий файл zip-lib.c)

#include source "adler32.c"
#include source "compress.c"
...


Если бы такое было то включение библиотек можно было бы делать просто подключением одного файла в сборку:

my-project.c:

#include source "zip-lib.c";

...

int r = compress(...)



А вот кстати, есть ли какой-нибудь С/C++ компиляторов в котором можно было бы настроить такое дело?
Ну скажем с пом. каких-нибудь плагинов ?
Re[2]: Сборка кроссплтаформенных либ под винду
От: PM  
Дата: 22.02.18 22:23
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>На самом деле в С/С++ чертовски не хватает чего-то типа #include source "....c"


Есть проект single-file public domain (or MIT licensed) libraries for C/C++ https://github.com/nothings/stb

Ну и в C++ header-only библиотеки не редкость, хотя скорее вынужденая.
Re[3]: Сборка кроссплтаформенных либ под винду
От: c-smile Канада http://terrainformatica.com
Дата: 23.02.18 03:09
Оценка:
Здравствуйте, PM, Вы писали:

PM>Здравствуйте, c-smile, Вы писали:


CS>>На самом деле в С/С++ чертовски не хватает чего-то типа #include source "....c"


PM>Есть проект single-file public domain (or MIT licensed) libraries for C/C++ https://github.com/nothings/stb


Это я знаю. Паллиатив.

PM>Ну и в C++ header-only библиотеки не редкость, хотя скорее вынужденая.


Вот последнее слово не в бровь, а в глаз что называется.

Добавить #include source или #import какой в C и 90% существующих библиотек можно включать простым #include в исходниках.
И не нужен весь зверинец тех make'ов и autotools каких прости хоспидя. #if + #include и гори он все огнем.
И те самые C++ modules тоже никому будут внезапно будут не нужны.
Re: Сборка кроссплтаформенных либ под винду
От: sr_dev  
Дата: 23.02.18 14:52
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>И вот сейчас, когда судьба опять подкинула сюрприз, в виде необходимости использовать опенсорсную либу, но которая без танцев с 3-мя бубнами одновременно нормально собирается только под линукс — у меня вопрос: А есть ли какая-то рабочая схема, по которой можно собрать любой кроссплатформенный опенсорс в виде нативной MSVC бибилиотеки.


В принципе в описанной ситуаций (линукс ок, винда апож) в 95% случаем помогает msys/mingw. Там собираете, получается дллка. Пути на бинарные каталоги мсиса добавляете и всё работает.
опа опа мы воюем с нато
любит хавать этот кал
путинская вата
Re[2]: Сборка кроссплтаформенных либ под винду
От: Ops Россия  
Дата: 24.02.18 09:30
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Эти скрипты, их рожает специально обученная тулза.


Казалось бы, а нафига они нужны, если генерятся из других? Как временный файл — понятно, ну так его должна создавать система сборки и удалять при подчистке.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[3]: Сборка кроссплтаформенных либ под винду
От: Pzz Россия https://github.com/alexpevzner
Дата: 24.02.18 09:35
Оценка:
Здравствуйте, Ops, Вы писали:

Pzz>>Эти скрипты, их рожает специально обученная тулза.


Ops>Казалось бы, а нафига они нужны, если генерятся из других? Как временный файл — понятно, ну так его должна создавать система сборки и удалять при подчистке.


По традиции, исключительно для удобства (юниксовского) пользователя, чтобы не заставлять его у себя еще и autoconf/automake держать. А так, да, удалаются при подчистке. При более глубокой подчистке, чем make clean (забыл, как правильный таржет называется).

Но вообще, все это — довольно архаичная система, и по нонешним временам работает не очень хорошо. Переделал-бы кто-нибудь, да, похоже, некому...
Re[3]: Сборка кроссплтаформенных либ под винду
От: lpd Черногория  
Дата: 24.02.18 10:32
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>И правильно делают, что берут. Еще не хватало, чтобы они делали самодельные криптопротоколы на базе перечисленных тобой кирпичиков. Я представляю себе, чего они там нагородят. Причем лучше бы, если бы они не выпендривались, и брали TLS в виде готового протокола. Чтобы делать не так, надо иметь ОЧЕНЬ серьезные причины.


Хотел бы спросить: сравнивал ли ты интерфейс для асинхронных сокетов openssl с другими ssl-сокетами(Android, iOS)? Я молчу даже про bio, но зачем в OpenSSL нужны SSL_ERROR_WANT_READ и SSL_ERROR_WANT_WRITE?
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)
Re[4]: Сборка кроссплтаформенных либ под винду
От: Pzz Россия https://github.com/alexpevzner
Дата: 24.02.18 10:36
Оценка:
Здравствуйте, lpd, Вы писали:

lpd>Хотел бы спросить: сравнивал ли ты интерфейс для асинхронных сокетов openssl с другими ssl-сокетами(Android, iOS)? Я молчу даже про bio, но зачем в OpenSSL нужны SSL_ERROR_WANT_READ и SSL_ERROR_WANT_WRITE?


А какой смысл в этом сравнении? Вендовый CryptoAPI заведомо еще хуже

Однако, я не сказал, что надо использовать именно OpenSSL, есть и другие библиотеки на эту тему. Я сказал, что не надо самодельных криптопротоколов изобретать без нужды.
Re[3]: Сборка кроссплтаформенных либ под винду
От: reversecode google
Дата: 24.02.18 10:47
Оценка:
openssl используют только в двух случаях
1) нужен стандартный https
2) разработчик не понимает что делает

какой из них ваш, подчеркните

надо заметить, ни один популярный мессенджер не использует openssl
Re[4]: Сборка кроссплтаформенных либ под винду
От: Pzz Россия https://github.com/alexpevzner
Дата: 24.02.18 10:57
Оценка:
Здравствуйте, reversecode, Вы писали:

R>надо заметить, ни один популярный мессенджер не использует openssl


Угу. А крутые перцы, я полагаю, берут AES-256, и под девизом "AES — шифр крепкий" зашифровывают им каждый блок по-отдельности, и так и передают.
Re[4]: Сборка кроссплтаформенных либ под винду
От: zaufi Земля  
Дата: 03.04.18 23:16
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>По традиции, исключительно для удобства (юниксовского) пользователя, чтобы не заставлять его у себя еще и autoconf/automake держать. А так, да, удалаются при подчистке. При более глубокой подчистке, чем make clean (забыл, как правильный таржет называется).


distclean

Pzz>Но вообще, все это — довольно архаичная система, и по нонешним временам работает не очень хорошо.


времена просто изменились...

Pzz> Переделал-бы кто-нибудь, да, похоже, некому...


и незачем
Re: Сборка кроссплтаформенных либ под винду
От: RS_Pro Россия  
Дата: 29.04.18 09:55
Оценка:
Привет.

Для сборки OpenSSL нужно иметь Visual Studio и ActivePerl для Windows.

Процесс сборки по шагам OpenSSL:

1) скачиваем по ссылке https://www.openssl.org/source/openssl-1.0.2o.tar.gz и распаковываем.
2) запускаем утилиту из Visual Studio для сборки из командной строки (например для VS 2017 Community "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat"). Утилиту можно также найти через кнопку "Start" в списке программ. Появляется окно командной строки.
3) переходим в корневой каталог с распакованными исходниками openssl.
4) выполняем команды:
>> c:\Perl\bin\perl Configure VC-WIN32 no-asm
>> call ms\do_ms.bat
>> nmake -f ms\ntdll.mak
5) получаем либы, которые можно подключать к своему проекту: ssleay32.dll, ssleay32.lib, ssleay32.exp, libeay32.dll, libeay32.lib, libeay32.exp. Либы можно скопировать в отдельную папку ( для удобства) c:\openssl\libs, также как хедеры в папку c:\openssl\include.


Сборка zlib по шагам:
1) скачиваем по ссылке https://github.com/madler/zlib/archive/v1.2.11.zip, распаковываем.
2) запускаем утилиту из Visual Studio для сборки из командной строки.
3) переходим в корневой каталог с распакованными исходниками и выполняем:
>> nmake -f win32/Makefile.msc
4) копируем хедеры: zconf.h и zlib.h, например в c:\zlib\include.
5) копируем либы: zdll.exp, zdll.lib, zlib1.dll, например в c:\zlib\lib.
6) подключаем хедеры и либы к своему проекту.
Re[2]: Сборка кроссплтаформенных либ под винду
От: brunomann  
Дата: 30.04.18 05:45
Оценка:
Здравствуйте, уважаемые участники форума ( http://rsdn.org/Forum/ ). Очень прошу, если у кого сохранились — кто-нибудь, пожалуйста, выложите на Вашем сервере (или где-нибудь на свободном файлообменнике) следующие очень старые SDK от Microsoft (и дайте ссылки на них), в Итернете ИХ (#1, #2, #3, #4) НИГДЕ НЕВОЗМОЖНО НАЙТИ(!!!) (все ссылки или битые-мертвые или ложные
Может быть у кого-нибудь остались Platform Software Development Kit-ы 1998--1999 годов (выпущенные ДО ИЮНЯ 2001 года)?

НУЖНЫ ИМЕННО ВСЕ ЭТИ СТАРЫЕ SDK:

----------------------------------------
#1) Microsoft Win32 Software Development Kit 4.0 (v4.0)
----------------------------------------
#2) Microsoft Platform SDK April 1999 (1999-04)
----------------------------------------
#3) Microsoft Platform SDK September 1999 (1999-09) (!!!)
----------------------------------------
#4) Microsoft Platform SDK February 2001 (2001-02)
----------------------------------------
ОСОБЕННО ОЧЕНЬ НУЖЕН: Microsoft Platform SDK September 1999 (1999-09) (версия SDK за СЕНТЯБРЬ 1999 ГОДА!)

С уважением, Bruno Mann.
Re[3]: Сборка кроссплтаформенных либ под винду
От: reversecode google
Дата: 30.04.18 06:00
Оценка:
явно не для разработки
а для последующих перепродаж
http://www.emsps.com/oldtools/msdn.htm
некислый бизнес
Re[3]: Сборка кроссплтаформенных либ под винду
От: reversecode google
Дата: 30.04.18 06:22
Оценка:
флудер
https://forum.shelek.ru/index.php/topic,7567.msg304378/topicseen.html
Re[4]: Сборка кроссплтаформенных либ под винду
От: brunomann  
Дата: 02.05.18 05:48
Оценка:
Здравствуйте, reversecode, Вы писали:

R>флудер

R>https://forum.shelek.ru/index.php/topic,7567.msg304378/topicseen.html
Зачем обзываться?
Microsoft Platform SDK September 1999 и др. SDK мне надо для драйверов под Windows 98 (Visual C++ 5).
Если у кого-то есть — поделитесь, пожалуйста.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.