Constantine
я плохо представляю, насколько надо быть ебанутым, чтобы под MSC написать код, который не работает с новой msvcrt)
Александр
под win xp работает /MD
ээ.. вообще нет, когда я давным давно перешёл на /MT, причина была в воплях клиента "тут требует MSVCRT140.dll, а у нас нет!"
Александр
а погуглить как редистрибить без регистрации библиотек?
вообще гуглил. но даже в голове не укладывается, как будет работать без требуемых длл, но с динамической линковкой
Alexander "SonnySlave"
а зачем вообще ставить не /MD[d] ?
на прошло работе мы собирали статически, так как у одного кастомера не работало с его версией либы
Constantine
народ вы вообще в курсе что со времен 200? года все это чудесно редистрибится одной папкой
Alexander "SonnySlave"
чем это отличается от линковки статически? 😊
Berkus
я от винды отказался в 2002 году а писать под нее перестал в 2012, так что это боль для других людей теперь
Constantine
тем, что у тебя /MD
Alexander "SonnySlave"
что так с собой носишь, что эдак
Constantine
Alexander "SonnySlave"
Berkus
чем это отличается от линковки статически? 😊
нет, /MD позволяет не стрелять в ногу если что
Berkus
там правда другие футганы завезены
Alexander "SonnySlave"
нет, /MD позволяет не стрелять в ногу если что
не совсем понимаю, о какой стрельбе речь
Berkus
так что что так что этак все говно
Constantine
не совсем понимаю, о какой стрельбе речь
ну /MT это расстрел ноги как только так сразу
Berkus
не совсем понимаю, о какой стрельбе речь
длл вызывает маллок в md crt и передает указатель тебе, ты делаешь free
Berkus
The World is Burning
Alexander "SonnySlave"
Александр
а теперь возвращаемся к моему начальному посту, добавляем ко всем std::container -> std::pmr::container и всё работает 😊
Constantine
там самое не очевидное что надо взять мс редистриб пакадж, оставить темповые файлы и вытащить потом все .dll общего c runtine
Alexander "SonnySlave"
длл вызывает маллок в md crt и передает указатель тебе, ты делаешь free
а про какую DLL речь? у меня же всё статически собрано
Александр
а про какую DLL речь? у меня же всё статически собрано
подразумевается статическая сборка длл, которая затем грузится чем-то
Constantine
а про какую DLL речь? у меня же всё статически собрано
ну если у тебя в итоге все линкуется в один .exe ты можешь что хочешь делать
Constantine
в частности, линковать до второго пришествия
Constantine
поставь еще link time code generation
Constantine
а так - /MD, msvcrt нужной версии и штук тридцать .dll сверху и у тебя все по-человечески
Constantine
работать наверное будет даже с dll собранными вижаками года до 2005
Constantine
или пострелять в ногу аллокаторами
или делать один файл, да
Александр
я ещё подумаю над этим, спасибо за совет
Constantine
вообще dll hell давно известная проблема
Constantine
и не ставить dll а тащить рядом еще в районе выхода вин8 рекомендовали уже
Alexander "SonnySlave"
типичненько 😊
Constantine
кажись там дефолтная мс валидаторка просто это проверяла
🐙 Antony
Подъехали новые идеи для улучшения стандарта C++ https://stdcpp.ru/proposals Отписывайтесь и голосуёте, если кому-то что-то не нравится или наоборот нравится
Крылатый
Там всегда можно сделать PR
Крылатый
Pull request
Constantine
Нет
Constantine
В std действительно нет iterator_tuple
Igor
обсуждалось же вроде сравнительно недавно, про ranges::view::zip и structured bindings?
Constantine
И где ranges?
Igor
в Ranges TS?
Constantine
experimental TS в 20?
Крылатый
Олсо.
Constantine
примут в 23м в лучшем?
Крылатый
Вот чего точно жаль, что нет в STL, так это как раз таки zip.
Alexander "SonnySlave"
в 23 точно)
Крылатый
Вот везде есть, а в плюсах нет в стандартной либе.
Крылатый
Хотеть.
Крылатый
Крылатый
В смысле, сжатие.
Igor
примут в 23м в лучшем?
действительно, давайте пока нету - примем в стандарт std::span, который будет выполнять ту же функцию но будет потенциально несовместим с ranges
Constantine
А я про обход с индексами
Alexander "SonnySlave"
В смысле, сжатие.
архивирование или что?
Alexander "SonnySlave"
йап
ну есть же libarchive
Alexander "SonnySlave"
так что им можно обходиться)
Крылатый
ну есть же libarchive
Он не в стандарте(
Constantine
Чета имхо пройти массив зная индексы надо в 10005005480950809 раз чаще зипования
Alexander "SonnySlave"
ну сорри. пропозал и вперёд)
Alexander "SonnySlave"
мне вот лично пока что не нужно было с архивами работать
Крылатый
Хочу std::zip(buffer_in, buffer_out);
Constantine
да izipstream/ozipstream
Крылатый
Или так, да.
Александр
хотя может это уже обсуждалось, я мимо проходил