Winbuntu
От: Шахтер Интернет  
Дата: 21.05.18 12:13
Оценка: 28 (5) +2
Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.
Самый быстрый способ получить C++17 под виндой.

Update.

Немного про WSL для начинающих здесь

Установив пакет xorg-dev вы можете писать и запускать X-Windows приложения под WSL.
Нужно только запустить XServer под Windows (например, VcXSrv) и добавить в bash.rc строчку

export DISPLAY=127.0.0.1:0.0
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Отредактировано 23.05.2018 7:19 Шахтер . Предыдущая версия .
Re: Winbuntu
От: Artem Korneev США https://www.linkedin.com/in/artemkorneev/
Дата: 23.05.18 19:25
Оценка: :))) :))) :)
Здравствуйте, Шахтер, Вы писали:

Ш>Установив пакет xorg-dev вы можете писать и запускать X-Windows приложения под WSL.


Wine работает?
С уважением, Artem Korneev.
Re: Winbuntu
От: so5team https://stiffstream.com
Дата: 21.05.18 12:31
Оценка: 31 (2) +4
Здравствуйте, Шахтер, Вы писали:

Ш>Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.

Ш>Самый быстрый способ получить C++17 под виндой.

А еще есть сборки от MinGW-w64 (тынц) и NuWen MinGW, который сразу с Boost-ом в придачу (тынц). И работать будет прямо в Window-ом Command Propmt-е.
Re: Winbuntu
От: AlexGin Беларусь  
Дата: 21.05.18 12:22
Оценка: -3
Здравствуйте, Шахтер, Вы писали:

Ш>Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.

Ш>Самый быстрый способ получить C++17 под виндой.

Уточнение — поднять Ubuntu в виртуалке? Я верно понимаю?

Что-то для этого нужно, кроме имеющегося уже у меня *.iso образа:
ubuntu-18.04-desktop-amd64.iso ?

Какая-то дополнительная утилита для Windows 10 — чтобы смонтировать эту Ubuntu 18.04?

P.S. Насчёт самого быстрого способа — получить C++17 под виндой:
MSVC-2017 CE — в настройках C/C++ -> CommandLine -> AdditionalOptions запишем: /std:c++17

P.P.S. Мне интересно именно опробовать C++17 под Linux
Отредактировано 21.05.2018 12:28 AlexGin . Предыдущая версия . Еще …
Отредактировано 21.05.2018 12:27 AlexGin . Предыдущая версия .
Re[7]: Winbuntu
От: so5team https://stiffstream.com
Дата: 22.05.18 11:32
Оценка: +3
Здравствуйте, IID, Вы писали:

S>>Какое отношение это все имеет к возможности работы с C++17 в gcc под Windows?


IID>На костылях тоже можно передвигаться, не спорю.


Не включая мозги можно и на форуме писать, очевидно. Тема же не о том, как под Windows получить возможность разрабатывать как под Unix, а о том, как под Windows получить gcc с нормальной поддержкой стандарта C++17. Нужно это может быть, внезапно, для разработки под Windows, но в рамках нормального C++ (а не того, что MS в своем компиляторе сделала).

Итак, почему MinGW-w64 для этой задачи является костылем?
Re[2]: Winbuntu
От: Блудов Павел Россия  
Дата: 22.05.18 01:59
Оценка: 3 (1) +1
Здравствуйте, Pzz, Вы писали:

Pzz>Но я так понимаю, программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.


Нет. Есть понятие host platform, а есть target platform. Всякие прошивки для модемов не на модемах же собирают.
И Windows может быть target platform. Вот хорошая инструкция.

Gstreamer тоже бинарники для Windows собирает в Linux.

Обе эти инсрукции можно использовать, чтобы собирать родные приложения для Windows прямо в Winbuntu.
Re[10]: Winbuntu
От: IID Россия  
Дата: 22.05.18 14:29
Оценка: +2
Здравствуйте, so5team, Вы писали:

S>Чтобы не платить за Visual Studio, если для проекта не нужно ничего MS-specific.


Вот это поворот!
Редация Community бесплатна, и ничем не отличается от Professional.
А до этого много лет существовала Express редакция, несколько урезанная, и тоже бесплатная.

Это если забыть что МСу пофиг на пиратство студии, и им пользуются сплошь и рядом.

Какое-то красноглазое фанбойство, ей-богу.

S>Чтобы не трахаться с "С++" от MS, скажем.


Не останавливайся. Логично следующим шагом не трахаться с виндой вообще.

S>Яркий пример -- попытки использования библиотеки Ranges под Windows.

S>Это если вам нужны эти самые последние SDK от вендора.

Странная разработка. Какая-то левая либа и сырые фичи стандарта нужны, а вендорские сдк не нужны.

S>Ваше мнение очень важно, продолжайте держать в курсе.


"Я бежала за вами два дня ?" Не важно — не отвечай.
kalsarikännit
Re[12]: Winbuntu
От: Ops Россия  
Дата: 23.05.18 13:41
Оценка: +2
Здравствуйте, so5team, Вы писали:

S>Она бесплатна для индивидуальных пользователей, обучения, академических исследований и открытых проектов. Но если вас устраивает использование пиратских версий, то это не проблема, конечно же.


Для мелкого бизнеса она тоже бесплатна, до 5 рабочих мест. Но новости из 2008 года интересны, продолжай держать в курсе.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[2]: Winbuntu
От: Дрободан Фрилич СССР  
Дата: 21.05.18 12:52
Оценка: 6 (1)
AlexGin:


Ш>>Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.

Ш>>Самый быстрый способ получить C++17 под виндой.
AG>Уточнение — поднять Ubuntu в виртуалке? Я верно понимаю?
Нет.
Это реализация системных вызовов линукса в ядре Win10.

Подсистема Ubuntu появилась и в Windows Server 2016...

AG>Что-то для этого нужно, кроме имеющегося уже у меня *.iso образа:

AG>ubuntu-18.04-desktop-amd64.iso ?
ubuntu-18.04-desktop-amd64.iso — не пойдет — он тащит линуксовое ядро, ФС и пр.
В десятке нужные пакеты устанавливаются при помощи заклинания
sudo app-get install
Правда GUI проги поставить не просто (не пробовал, но читал).

AG>P.P.S. Мне интересно именно опробовать C++17 под Linux

Новый gcc неверняка есть и в Win версии (cygwin и/или mingw).
Отредактировано 21.05.2018 12:57 Bill Baklushi . Предыдущая версия .
Re[3]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.05.18 09:41
Оценка: +1
Здравствуйте, IID, Вы писали:

Pzz>>Но я так понимаю, программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.


IID>Ты путаешь с костыльным MinGW. В WSL весь буханочный юзермод работает AS IS, неотличимо от родной буханочной среды.


Ничего я не путаю. А вот ты путаешь MinGW с Cygwin
Re[4]: Winbuntu
От: IID Россия  
Дата: 22.05.18 10:15
Оценка: :)
Здравствуйте, Pzz, Вы писали:

Pzz>>>программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.


IID>>Ты путаешь с костыльным


Pzz>Ничего я не путаю.


Тогда поясни, почему выделенное.

Pzz>НА вот ты путаешь MinGW с Cygwin


оба-два говно.
kalsarikännit
Отредактировано 22.05.2018 10:21 IID . Предыдущая версия .
Re[13]: Winbuntu
От: so5team https://stiffstream.com
Дата: 23.05.18 09:03
Оценка: :)
Здравствуйте, AlexGin, Вы писали:

AG>Пока я и мои товарищи по работе занимаемся иисследованиями (academic research).


Замечательно. Еще лучше было бы, если бы вы свою частную ситуацию не проецировали на весь остальной мир. А то ведь за пределами вашего уютного мирка, в котором 50-летний разработчик с многолетним стажем не знает как найти свежие версии gcc/clang для своей системы, случается всякое. И жесткий контроль за софтом на рабочих станциях, и, о ужас, требования согласовывать использование сторонних инструментов с юридическим отделом.
Re[9]: Winbuntu
От: alex_public  
Дата: 24.05.18 11:02
Оценка: +1
Здравствуйте, IID, Вы писали:

S>>Итак, почему MinGW-w64 для этой задачи является костылем?

IID>Именно для разработки, и под Windows ? Неслабо ты тему меняешь. Для разработки под Windows он вообще не годится.

А какой вменяемый компилятор C++ под винду ты можешь предложить, кроме gcc?

— убогую поделку от MS предлагать просто смешно (см. например сюда https://rsdn.org/forum/cpp/6722631.1
Автор: alex_public
Дата: 11.03.17
, причём за год ничего не поменялось https://rsdn.org/forum/cpp/7014553.1
Автор: Nuzhny
Дата: 09.01.18
).
— clang конечно хорош своими сообщениями об ошибках и поддержкой стандарта, но по оптимизации уступает всем остальным.
— компилятор от Intel? Там с быстродействием как раз всё хорошо, но стандарт поддерживается не так оперативно и плюс в отличие от всех остальных он стоит приличных денег.

Так кого ещё предложишь, если не MinGW? )
Re[9]: Winbuntu
От: ononim  
Дата: 30.05.18 15:53
Оценка: +1
IID>А никто 100% линукса и не обещал
IID>Заходишь на WSL страницу гитхаба. Оттуда есть ссылки на списки софта, который работает плохо.
Название 'Windows Subsystem for Linux' наверно придумал тот самый человек что и WoW64.
Как много веселых ребят, и все делают велосипед...
Re[2]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 21.05.18 16:42
Оценка:
Здравствуйте, AlexGin, Вы писали:

Ш>>Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.

Ш>>Самый быстрый способ получить C++17 под виндой.

AG>Уточнение — поднять Ubuntu в виртуалке? Я верно понимаю?


У 10-й венды теперь убунта входит прям в состав виндовс, и хорошо с ним интегрированна.

Подробностей не знаю, а не пользователь венды от слова совсем, у меня линух прям на голом железе работает
Re: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 21.05.18 16:47
Оценка:
Здравствуйте, Шахтер, Вы писали:

Ш>Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.

Ш>Самый быстрый способ получить C++17 под виндой.

Но я так понимаю, программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.

P.S. Про убунту не знаю, а в федоре вполне работоспособный кросс-mingw является частью дистрибутива, и позволяет компилировать программы под венду прямо из линуха. И к нему куча всяких полезных предсобранных библиотек прилагается. У меня сейчас не самая свежая федора (все руки не доходят проапгрейдиться), но gcc в этом кросс-mingw имеет версию 7.2.0. Наверное, в самой свежей федоре и gcc поновее. Полагаю, что для убунты тоже есть подобные удобства.
Re[2]: Winbuntu
От: Igore Россия  
Дата: 22.05.18 04:57
Оценка:
Здравствуйте, AlexGin, Вы писали:

Ш>>Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.

Ш>>Самый быстрый способ получить C++17 под виндой.

AG>Уточнение — поднять Ubuntu в виртуалке? Я верно понимаю?


1) Turn on Developer Mode
Open Settings -> Update and Security -> For developers
Select the Developer Mode radio button
2) Open a command prompt. Run bash

https://docs.microsoft.com/en-us/windows/wsl/install-win10
Re[3]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.05.18 05:54
Оценка:
Здравствуйте, Блудов Павел, Вы писали:

Pzz>>Но я так понимаю, программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.


БП>Нет. Есть понятие host platform, а есть target platform. Всякие прошивки для модемов не на модемах же собирают.

БП>И Windows может быть target platform. Вот хорошая инструкция.

Это я понимаю. Но на федоре, например, кросс-gcc — это отдельный набор пакетов. И версия gcc там в среднем не совпадает с gcc для хоста. Как в этом плане налажена жизнь в убунте, я не в курсе, но обычно довольно похоже.
Re[2]: Winbuntu
От: IID Россия  
Дата: 22.05.18 08:38
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Но я так понимаю, программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.


Ты путаешь с костыльным MinGW. В WSL весь буханочный юзермод работает AS IS, неотличимо от родной буханочной среды.
kalsarikännit
Re[2]: Winbuntu
От: IID Россия  
Дата: 22.05.18 08:39
Оценка:
Здравствуйте, so5team, Вы писали:

S>А еще есть сборки от MinGW-w64 (тынц) и NuWen MinGW, который сразу с Boost-ом в придачу (тынц).


Костыли.

S>И работать будет прямо в Window-ом Command Propmt-е.


Пффф. А WSL по-твоему где работает ?
kalsarikännit
Re[3]: Winbuntu
От: IID Россия  
Дата: 22.05.18 08:45
Оценка:
Здравствуйте, Дрободан Фрилич, Вы писали:

ДФ>Подсистема Ubuntu появилась и в Windows Server 2016...


Релизный Windows 2016 (1607) это LTSC, в нём WSL нет и неизвестно когда появится. Переношу руками из 10ки.

Обещали добавить в экспериментально version 1709 (Semi-Annual Channel). Но он вроде бы только в Server Core редакции, без Desktop Experience.
Версии 1607 — 1709 друг на друга не обновляются, только чистая установка.

Так что в сервере WSL'я можно сказать что нету.

ДФ>Правда GUI проги поставить не просто (не пробовал, но читал).


Ничего сложного. X-Server поднимаешь на винде нативно, и прописываешь его адрес. Аналогично аудио.

https://www.youtube.com/watch?v=gq42KyW6XLU
kalsarikännit
Re[3]: Winbuntu
От: so5team https://stiffstream.com
Дата: 22.05.18 09:17
Оценка:
Здравствуйте, IID, Вы писали:

S>>А еще есть сборки от MinGW-w64 (тынц) и NuWen MinGW, который сразу с Boost-ом в придачу (тынц).


IID>Костыли.


Пруфы?
Re[4]: Winbuntu
От: IID Россия  
Дата: 22.05.18 10:21
Оценка:
Здравствуйте, so5team, Вы писали:

S>Пруфы?


Это чистый юзермод. На уровне юзермода нормально не реализовать юниксовые особенности. Типа форка (хотя он доступен на уровне Native API), работы с анлинкнутыми файлами, удаление запущенного образа, человеческое хранение доп. юниксовых атрибутов и запрещённых на NTFS символов. В WSL серъёзная поддержка на уровне ядра ОС, даже специальный тип процессов сделали — PicoProcess.
kalsarikännit
Re[5]: Winbuntu
От: so5team https://stiffstream.com
Дата: 22.05.18 10:27
Оценка:
Здравствуйте, IID, Вы писали:

IID>На уровне юзермода нормально не реализовать юниксовые особенности. Типа форка (хотя он доступен на уровне Native API), работы с анлинкнутыми файлами, удаление запущенного образа, человеческое хранение доп. юниксовых атрибутов и запрещённых на NTFS символов. В WSL серъёзная поддержка на уровне ядра ОС, даже специальный тип процессов сделали — PicoProcess.


Какое отношение это все имеет к возможности работы с C++17 в gcc под Windows?
Re[5]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.05.18 10:45
Оценка:
Здравствуйте, IID, Вы писали:

IID>Тогда поясни, почему выделенное.


Венда со встроенной убунтой поддерживает теперь два формата исполняемых файлов: родной вендовый EXE, и родной линуксный ELF. Так вот, я хотел сказать, что gcc, который там внутри убунты, выдает на выходе ELF, а не EXE. И я полагаю, что если ты профессионально пишешь коробочный софтварий под венду, то тебе это не подходит, тебе нужен вендовый EXE, обернутый в вендовый инсталлятор.

Я, кстати, не верю, что в этой конструкции, как кто-то высказался "вендовое ядро исполняет системные запросы линуха". Полагаю, что они запустили настоящее линуксное ядро, или в виртуалке, или в режиме user mode linux, и аккуратно протоптали в user space необходимые дорожки между двумя мирами, чтобы запущенная таким образом линуксная программа смотрелась более-менее, как родная.

Pzz>>НА вот ты путаешь MinGW с Cygwin


IID>оба-два говно.


Нет. MinGW, в первую очередь — это gcc, выдающий вендовые EXE на выходе. В режиме кросс-компилятора (из линуха в венду) он очень даже удобен и неплох.

А что к нему прилагается какой-то минимальный псевдо-юниксный набор шеловских команд, то это не чтобы почувствовать себя в венде, как в линухе, а чтобы юниксовские makefile и сборочные скрипты худо-бедно под вендой запускались.
Re[6]: Winbuntu
От: IID Россия  
Дата: 22.05.18 11:15
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>>программы, скомпилированные этим gcc, только в линухе и можно запускать, пусть и встроенном в венду.


Pzz>Венда со встроенной убунтой поддерживает теперь два формата исполняемых файлов: родной вендовый EXE, и родной линуксный ELF. Так вот, я хотел сказать, что gcc, который там внутри убунты, выдает на выходе ELF, а не EXE. И я полагаю, что если ты профессионально пишешь коробочный софтварий под венду, то тебе это не подходит, тебе нужен вендовый EXE, обернутый в вендовый инсталлятор.


А я хотел уточнить что скомпилированные ELF будут работать в любом линуксе, не только встроенном в винду.

Pzz>Я, кстати, не верю, что в этой конструкции, как кто-то высказался "вендовое ядро исполняет системные запросы линуха". Полагаю, что они запустили настоящее линуксное ядро, или в виртуалке, или в режиме user mode linux, и аккуратно протоптали в user space необходимые дорожки между двумя мирами, чтобы запущенная таким образом линуксная программа смотрелась более-менее, как родная.


Нет, никакого ядра линукса в Win, разумеется, нет. Есть разница в семантике системных вызовов, но суть их в любой ОС очень похожа. Объекты синхронизации, работа с памятью, файловый ввод-вывод и т.д. Линуксовые юзермодные сисколлы транслируются внутри WSL в вызовы сервисов NT ядра. Я лично переносил WSL из 10ки в 2016 сервер, где его нет. Весь WSL это 1 драйвер и 1 сервис.

kalsarikännit
Re[6]: Winbuntu
От: IID Россия  
Дата: 22.05.18 11:17
Оценка:
Здравствуйте, so5team, Вы писали:

S>Какое отношение это все имеет к возможности работы с C++17 в gcc под Windows?


На костылях тоже можно передвигаться, не спорю.
kalsarikännit
Re[8]: Winbuntu
От: IID Россия  
Дата: 22.05.18 12:32
Оценка:
Здравствуйте, so5team, Вы писали:

S>Не включая мозги можно и на форуме писать, очевидно.


Я вижу. Когда через пару сообщений уже не помнишь о чём писал в начале.

S>Тема же не о том, как под Windows получить возможность разрабатывать как под Unix, а о том, как под Windows получить gcc с нормальной поддержкой стандарта C++17.


Что за внезапные откровения ? Перечитай стартовое сообщение.

S>Нужно это может быть, внезапно, для разработки под Windows, но в рамках нормального C++ (а не того, что MS в своем компиляторе сделала).


Разве что "внезапно". Разрабатывать под Windows именно на MinGW чтобы что ? Ради самых распоследних правок стандарта ? Подход больше на поделки студентов смахивает.

S>Итак, почему MinGW-w64 для этой задачи является костылем?


Именно для разработки, и под Windows ? Неслабо ты тему меняешь. Для разработки под Windows он вообще не годится.

По целому ряду причин.
Самая простая — свой собственный набор заголовочных файлов, понабранный из разных помоек (ReactOS, WINE, etc.) вместо последних SDK от вендора (Microsoft).
Он годится как инструмент кросскомпиляции буханочных поделий или ради экспериментов с Hello World C++1488.
kalsarikännit
Re[9]: Winbuntu
От: so5team https://stiffstream.com
Дата: 22.05.18 13:03
Оценка:
Здравствуйте, IID, Вы писали:

S>>Не включая мозги можно и на форуме писать, очевидно.


IID>Я вижу. Когда через пару сообщений уже не помнишь о чём писал в начале.


Пруфы?

S>>Тема же не о том, как под Windows получить возможность разрабатывать как под Unix, а о том, как под Windows получить gcc с нормальной поддержкой стандарта C++17.


IID>Что за внезапные откровения ? Перечитай стартовое сообщение.


Перечитываем:

Под Windows 10 можно поднять нативную Ubuntu консоль (версии аж 18.04). Под неё app-get ставит сразу gcc-7.3.0.
Самый быстрый способ получить C++17 под виндой.

Отдельно обращаем внимание на "получить C++17 под виндой".

S>>Нужно это может быть, внезапно, для разработки под Windows, но в рамках нормального C++ (а не того, что MS в своем компиляторе сделала).


IID>Разве что "внезапно". Разрабатывать под Windows именно на MinGW чтобы что ?


Чтобы не трахаться с "С++" от MS, скажем. Например, при работе с кроссплатформенным кодом, который заточен под самые новые версии C++. Яркий пример -- попытки использования библиотеки Ranges под Windows.

Чтобы не платить за Visual Studio, если для проекта не нужно ничего MS-specific.

Причин может быть много.

S>>Итак, почему MinGW-w64 для этой задачи является костылем?


IID>Именно для разработки, и под Windows ? Неслабо ты тему меняешь.


Вам показалось. Тема таковой была и остается.

IID>Самая простая — свой собственный набор заголовочных файлов, понабранный из разных помоек (ReactOS, WINE, etc.) вместо последних SDK от вендора (Microsoft).


Это если вам нужны эти самые последние SDK от вендора.

IID>Он годится как инструмент кросскомпиляции буханочных поделий или ради экспериментов с Hello World C++1488.


Ваше мнение очень важно, продолжайте держать в курсе.
Re[7]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.05.18 13:13
Оценка:
Здравствуйте, IID, Вы писали:

IID>А я хотел уточнить что скомпилированные ELF будут работать в любом линуксе, не только встроенном в винду.


Ну не в любом, разумеется, а в тех, где ABI использованных библиотек совместимо.

IID>Нет, никакого ядра линукса в Win, разумеется, нет. Есть разница в семантике системных вызовов, но суть их в любой ОС очень похожа. Объекты синхронизации, работа с памятью, файловый ввод-вывод и т.д. Линуксовые юзермодные сисколлы транслируются внутри WSL в вызовы сервисов NT ядра. Я лично переносил WSL из 10ки в 2016 сервер, где его нет. Весь WSL это 1 драйвер и 1 сервис.


Есть очень много тонких нюансов, существенно различающихся между системами. Теоретически, транслятор системных вызовов из линуха в венду сделать, наверное, можно. Практически, сделать его аккуратно ОЧЕНЬ сложно.

А вот скажи мне, мил человек, есть ли в 10-й венде SCTP сокеты а) в вендовом API б) в линуксячем API?

IID>Image: 1*IEvq0DSNzviET85A4uOHMQ.jpeg


Windows Subsystem For Linux на этой картинке может обозначать все, что угодно
Re[8]: Winbuntu
От: IID Россия  
Дата: 22.05.18 14:22
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Есть очень много тонких нюансов, существенно различающихся между системами. Теоретически, транслятор системных вызовов из линуха в венду сделать, наверное, можно. Практически, сделать его аккуратно ОЧЕНЬ сложно.


А никто 100% линукса и не обещал
Заходишь на WSL страницу гитхаба. Оттуда есть ссылки на списки софта, который работает плохо.

Тем не менее WSL на порядки совместимее с линуксом чем cygwin помойка. И не требует перекомпиляции к тому же.

Pzz>А вот скажи мне, мил человек, есть ли в 10-й венде SCTP сокеты а) в вендовом API б) в линуксячем API?


Примерно 100500 линуксового софта не юзает их.
Да и зачем такие сложности, можно начать с того, что кучи /dev не будет, а часть из тех что есть реализованы лишь частично. И никто не даст сделать insmod.

Pzz>Windows Subsystem For Linux на этой картинке может обозначать все, что угодно


Какая-то запредельная философия. А может и не означать.
kalsarikännit
Re[9]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.05.18 14:35
Оценка:
Здравствуйте, IID, Вы писали:

IID>А никто 100% линукса и не обещал

IID>Заходишь на WSL страницу гитхаба. Оттуда есть ссылки на списки софта, который работает плохо.

Зашел и почитал. Был впечатлен количеством несовместимых програм, и описанием их проблем. Какой-то это wine наоборот. Был о мелкософте лучшего мнения. Но в плане того, как это устроено, наверное, ты прав.

IID>Тем не менее WSL на порядки совместимее с линуксом чем cygwin помойка. И не требует перекомпиляции к тому же.


Открою тебе секрет. Cygwin даже и не пытается быть совместимым с линухом, он совместим с неким обобщенным посиксом.
Re[4]: Winbuntu
От: Дрободан Фрилич СССР  
Дата: 22.05.18 14:44
Оценка:
IID:

ДФ>>Подсистема Ubuntu появилась и в Windows Server 2016...

IID>Релизный Windows 2016 (1607) это LTSC, в нём WSL нет и неизвестно когда появится. Переношу руками из 10ки.
IID>Обещали добавить в экспериментально version 1709 (Semi-Annual Channel). Но он вроде бы только в Server Core редакции, без Desktop Experience.

На работе у меня винда-семерка, дома убунту на хосте. С десяткой я возился мало, брезгую.
Win Server мне интересен, предполагаю, что там меньше шпионажа. Неспешно изучаю целесообразность оборудовать рабочее место на Win Server. Недавно узнал, что поддержка WSL есть и для серверной винды, это плюс.
Re[11]: Winbuntu
От: so5team https://stiffstream.com
Дата: 22.05.18 15:21
Оценка:
Здравствуйте, IID, Вы писали:

S>>Чтобы не платить за Visual Studio, если для проекта не нужно ничего MS-specific.


IID>Вот это поворот!


То, что вы лично не сталкивались с копирастами, не значит, что их нет.

IID>Редация Community бесплатна, и ничем не отличается от Professional.


Она бесплатна для индивидуальных пользователей, обучения, академических исследований и открытых проектов. Но если вас устраивает использование пиратских версий, то это не проблема, конечно же.

IID>Не останавливайся. Логично следующим шагом не трахаться с виндой вообще.


Логично. И, к счастью, тенденция уменьшения интереса к Windows прослеживается. Но ряду заказчиков нужна Windows. А вот какой компилятор -- нет.
Re[9]: Winbuntu
От: Pzz Россия https://github.com/alexpevzner
Дата: 22.05.18 15:51
Оценка:
Здравствуйте, IID, Вы писали:

IID>Разве что "внезапно". Разрабатывать под Windows именно на MinGW чтобы что ? Ради самых распоследних правок стандарта ? Подход больше на поделки студентов смахивает.


Ну, например, если предполагается, что твоя программа работает и под линухом, и под виндой, то используя в качестве компилятора для винды кросс-mingw, можно сделать общий билд, который автоматически собирает твое хозяйство под обе платформы.

В противном случае тебе придется раскидывать сборку по двум машинам, а потом собирать вместе результаты. Автоматизация станет существенно сложнее.
Re[10]: Winbuntu
От: AlexGin Беларусь  
Дата: 22.05.18 21:44
Оценка:
Здравствуйте, so5team, Вы писали:

S>Чтобы не платить за Visual Studio, если для проекта не нужно ничего MS-specific.

Так открой же для себя MS Visual Studio — Community Edition:
https://www.visualstudio.com/vs/community
Re[10]: Winbuntu
От: AlexGin Беларусь  
Дата: 22.05.18 21:57
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Ну, например, если предполагается, что твоя программа работает и под линухом, и под виндой, то используя в качестве компилятора для винды кросс-mingw, можно сделать общий билд, который автоматически собирает твое хозяйство под обе платформы.


Думаю, что в любом случае потребуются макросы условной компиляции:
#ifdef Q_OS_WIN32
...
#endif

#ifdef Q_OS_LINUX
...
#endif

И отдельные прогоны сборки под Win и под Linux.

Pzz>В противном случае тебе придется раскидывать сборку по двум машинам, а потом собирать вместе результаты. Автоматизация станет существенно сложнее.

Можно и на одной: dual-boot в помощь
Re[11]: Winbuntu
От: so5team https://stiffstream.com
Дата: 23.05.18 05:40
Оценка:
Здравствуйте, AlexGin, Вы писали:

AG>Так открой же для себя MS Visual Studio — Community Edition:

AG>https://www.visualstudio.com/vs/community

Коллега, а вы сами эту страницу внимательно читали? Например, раздел "Использование программы"?
Re[12]: Winbuntu
От: AlexGin Беларусь  
Дата: 23.05.18 08:39
Оценка:
Здравствуйте, so5team, Вы писали:

S>Коллега, а вы сами эту страницу внимательно читали? Например, раздел "Использование программы"?


Читал, и даже очень внимательно:

For organizations

An unlimited number of users within an organization can use Visual Studio Community for the following scenarios: in a classroom learning environment, for academic research, or for contributing to open source projects.
For all other usage scenarios:
In non-enterprise organizations, up to five users can use Visual Studio Community. In enterprise organizations (meaning those with >250 PCs or >$1 Million US Dollars in annual revenue), no use is permitted beyond the open source, academic research, and classroom learning environment scenarios described above.


Могу прокомментировать:
Пока я и мои товарищи по работе занимаемся иисследованиями (academic research).
В перспективе, дай Бог, — выйдем на миллион долларов в год — приобретём и коммерческую версию!

P.S. Правда из изложенного — непонятно как M$ может отслеживать всё это.

Пример: пишут насчёт пяти пользователей.
Если я (single user) установил этот продукт на рабочем компе и на ноутбуке — как считать?
Отредактировано 23.05.2018 8:46 AlexGin . Предыдущая версия . Еще …
Отредактировано 23.05.2018 8:44 AlexGin . Предыдущая версия .
Re[14]: Winbuntu
От: _NN_ www.nemerleweb.com
Дата: 23.05.18 10:22
Оценка:
Здравствуйте, so5team, Вы писали:

Если годовой оборот больше миллиона то купить VS Pro будет не сложно совсем.
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re[15]: Winbuntu
От: so5team https://stiffstream.com
Дата: 23.05.18 11:28
Оценка:
Здравствуйте, _NN_, Вы писали:

_NN>Если годовой оборот больше миллиона то купить VS Pro будет не сложно совсем.


Еще проще, если больше миллиона будет не оборот, а прибыль
Re[3]: Winbuntu
От: Ops Россия  
Дата: 23.05.18 13:35
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>У 10-й венды теперь убунта входит прям в состав виндовс, и хорошо с ним интегрированна.


Теперь там несколько дистрибутивов, последний раз вроде 3 или 4 видел, может еще добавили.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[13]: Winbuntu
От: so5team https://stiffstream.com
Дата: 23.05.18 15:11
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Для мелкого бизнеса она тоже бесплатна, до 5 рабочих мест. Но новости из 2008 года интересны, продолжай держать в курсе.


Хотите сказать, что с 2009-го года разработкой на C++ занимается только мелкий бизнес?

Или что после 2008 никто не покупает VS Professional потому, что сперва была VS Express, потом исчезла и появилась Community?
Re[14]: Winbuntu
От: AlexGin Беларусь  
Дата: 23.05.18 15:51
Оценка:
Здравствуйте, so5team, Вы писали:

S>Замечательно. Еще лучше было бы, если бы вы свою частную ситуацию не проецировали на весь остальной мир. А то ведь за пределами вашего уютного мирка, в котором 50-летний разработчик с многолетним стажем не знает как найти свежие версии gcc/clang для своей системы,


С каких пор Linux стала "моей системой"
Вы не иначе меня с Шериданом перепутали!

Я занимаюсь на линукс эпизодически последние пару лет. И только в нерабочее время, так как по работе мне это не надо.

"Моя" система MS Windows, на ней занимаюсь с 90-х и продолжаю по сей день.
И насчет MSVC-2017 по c++17, c чем я работаю повседневно, у меня тут вопросов не было.
Сам кому хочешь расскажу.

А любопытство, сподвигшее меня на изучение Linux и попытки компиляции примеров на C++ в нём — это желание следовать модному тренду освоения линукса. Ну и желание развивать свой проф-кругозор.

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


Всё это имеет место, в определенных организациях.
Отсебя добавлю: нужно бежать сломя голову уходить из таких контор
Отредактировано 23.05.2018 16:02 AlexGin . Предыдущая версия . Еще …
Отредактировано 23.05.2018 15:57 AlexGin . Предыдущая версия .
Отредактировано 23.05.2018 15:54 AlexGin . Предыдущая версия .
Re[14]: Winbuntu
От: Ops Россия  
Дата: 23.05.18 16:03
Оценка:
Здравствуйте, so5team, Вы писали:

S>Хотите сказать, что с 2009-го года разработкой на C++ занимается только мелкий бизнес?


Нет, хочу сказать, что халява может быть интересна только мелкому. Крупный просто купит и не будет заморачиваться.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[15]: Winbuntu
От: so5team https://stiffstream.com
Дата: 23.05.18 16:51
Оценка:
Здравствуйте, Ops, Вы писали:

S>>Хотите сказать, что с 2009-го года разработкой на C++ занимается только мелкий бизнес?


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


Мелкому, AFAIK, вообще без разницы, они слишком мелкие, чтобы за ними следили. А вот среднего размера конторы, которые еще не начали грести деньги лопатой, не очень охотно идут на покупку лицензий на какие-нибудь Qt, gSOAP, VS и пр. Мол, OpenSource же вокруг, зачем что-то покупать?
Re[16]: Winbuntu
От: Ops Россия  
Дата: 23.05.18 18:48
Оценка:
Здравствуйте, so5team, Вы писали:

S>Мелкому, AFAIK, вообще без разницы, они слишком мелкие, чтобы за ними следили. А вот среднего размера конторы, которые еще не начали грести деньги лопатой, не очень охотно идут на покупку лицензий на какие-нибудь Qt, gSOAP, VS и пр. Мол, OpenSource же вокруг, зачем что-то покупать?


Вот ты сравнил. Qt стоит в месяц столько же, сколько студия единоразово. Да, ее, возможно, придется через пару лет обновить, хотя многие по 10 лет на одной версии сидят, обновляя только тулсет, бесплатно, но даже 450уё раз в 2-3 года или 450уё каждый месяц — разница колоссальная.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[5]: Winbuntu
От: MShura  
Дата: 23.05.18 20:16
Оценка:
IID>Это чистый юзермод. На уровне юзермода нормально не реализовать юниксовые особенности. Типа форка (хотя он доступен на уровне Native API), работы с анлинкнутыми файлами, удаление запущенного образа, человеческое хранение доп. юниксовых атрибутов и запрещённых на NTFS символов. В WSL серъёзная поддержка на уровне ядра ОС, даже специальный тип процессов сделали — PicoProcess.

С точки зрения NTFS единственный запрещенный символ в имени это 0
В линуксе он также запрещен
Re[17]: Winbuntu
От: so5team https://stiffstream.com
Дата: 23.05.18 20:18
Оценка:
Здравствуйте, Ops, Вы писали:

Ops>Вот ты сравнил. Qt стоит в месяц столько же, сколько студия единоразово. Да, ее, возможно, придется через пару лет обновить, хотя многие по 10 лет на одной версии сидят, обновляя только тулсет, бесплатно, но даже 450уё раз в 2-3 года или 450уё каждый месяц — разница колоссальная.


Qt сейчас многие юзают бесплатно под LGPL.
Re[18]: Winbuntu
От: Ops Россия  
Дата: 23.05.18 21:08
Оценка:
Здравствуйте, so5team, Вы писали:

S>Qt сейчас многие юзают бесплатно под LGPL.


Угу, я в курсе. Но эта LGPL для бизнеса иногда штука очень неудобная, и в таком случае придется платить.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[6]: Winbuntu
От: IID Россия  
Дата: 24.05.18 08:24
Оценка:
Здравствуйте, MShura, Вы писали:

MS>С точки зрения NTFS единственный запрещенный символ в имени это 0


С точки зрения имени потока на файловой системе и формата хранения данных, но не с точки зрения ОС.

См. FsRtlIsAnsiCharacterLegalXXXX которая проверяет флаг доступности ASCII символов во встроенных ФС (Fat/Hpfs/Ntfs).

На NTFS запрещены:
0x00-0x1F
0x22 (")
0x2A (*)
0x2F (/)
0x3C (<)
0x3E (>)
0x3F (?)
0x5C (\)

Кроме ограничений ФС придётся пробиться сквозь менеджер объектов, у него на обратные слеши свой взгляд.

MS>В линуксе он также запрещен


А что со слешом в линуксе ?
kalsarikännit
Re[14]: Winbuntu
От: IID Россия  
Дата: 24.05.18 08:26
Оценка:
Здравствуйте, so5team, Вы писали:

S>А то ведь за пределами вашего уютного мирка, в котором 50-летний разработчик с многолетним стажем не знает как найти свежие версии gcc/clang для своей системы, случается всякое.


Я не ошибся в своей первой оценке. Ты колхозное хамло.
kalsarikännit
Re[2]: Winbuntu
От: Ops Россия  
Дата: 25.05.18 07:23
Оценка:
Здравствуйте, Artem Korneev, Вы писали:

Ш>>Установив пакет xorg-dev вы можете писать и запускать X-Windows приложения под WSL.


AK>Wine работает?


Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[10]: Winbuntu
От: IID Россия  
Дата: 30.05.18 16:01
Оценка:
Здравствуйте, ononim, Вы писали:

O>Название 'Windows Subsystem for Linux' наверно придумал тот самый человек что и WoW64.


In Soviet Russia...
kalsarikännit
Re[7]: Winbuntu
От: MShura  
Дата: 30.05.18 17:12
Оценка:
MS>>С точки зрения NTFS единственный запрещенный символ в имени это 0

IID>С точки зрения имени потока на файловой системе и формата хранения данных, но не с точки зрения ОС.


IID>См. FsRtlIsAnsiCharacterLegalXXXX которая проверяет флаг доступности ASCII символов во встроенных ФС (Fat/Hpfs/Ntfs).


IID>На NTFS запрещены:

IID>0x00-0x1F
IID>0x22 (")
IID>0x2A (*)
IID>0x2F (/)
IID>0x3C (<)
IID>0x3E (>)
IID>0x3F (?)
IID>0x5C (\)

IID>Кроме ограничений ФС придётся пробиться сквозь менеджер объектов, у него на обратные слеши свой взгляд.


Есть также ограничения на имена CON/PRN/COM1 и прочее.
Неужели это тоже ограничения файловой системы?

Во всех известных мне реализациях ntfs.sys ограничение на количество кластеров — 32 бита, хотя файловая система поддерживает 64 битную адресацию
Запрет на создание hardlink на каталоги — ограничение реализации.

Все эти примеры говорят только об ограничениях реализации.
Я же говорил об ограничениях ФС.
В других реализациях указанных ограничений нет.


MS>>В линуксе он также запрещен


IID>А что со слешом в линуксе ?

На маке экранируется. На линуксе не знаю.
Re[6]: Winbuntu
От: σ  
Дата: 30.05.18 17:22
Оценка:
MS>С точки зрения NTFS единственный запрещенный символ в имени это 0
MS>В линуксе он также запрещен

В NTFS вроде UTF-16. Как 0 может быть там запрещённым?
Re[7]: Winbuntu
От: MShura  
Дата: 30.05.18 18:50
Оценка:
Здравствуйте, σ, Вы писали:

MS>>С точки зрения NTFS единственный запрещенный символ в имени это 0

MS>>В линуксе он также запрещен

σ>В NTFS вроде UTF-16. Как 0 может быть там запрещённым?


В ondisk структурах прописана длина имени и если внутри этого имени есть 0, то chkdsk удаляет такое имя.
Re[15]: Winbuntu
От: SomeOne_TT  
Дата: 02.06.18 06:30
Оценка:
Здравствуйте, AlexGin, Вы писали:


AG>"Моя" система MS Windows, на ней занимаюсь с 90-х и продолжаю по сей день.

AG>И насчет MSVC-2017 по c++17, c чем я работаю повседневно, у меня тут вопросов не было.
AG>Сам кому хочешь расскажу.

в MSVC C++ VLA-то уже добавили?
Re[7]: Winbuntu
От: flаt  
Дата: 03.06.18 18:21
Оценка:
Здравствуйте, σ, Вы писали:

MS>>С точки зрения NTFS единственный запрещенный символ в имени это 0


σ>В NTFS вроде UTF-16. Как 0 может быть там запрещённым?


Символ, а не байт.
Re[16]: Winbuntu
От: flаt  
Дата: 03.06.18 18:22
Оценка:
Здравствуйте, SomeOne_TT, Вы писали:

SO_>в MSVC C++ VLA-то уже добавили?


В C++ нет VLA.
Re[10]: Winbuntu
От: steep8  
Дата: 04.06.18 07:31
Оценка:
Здравствуйте, alex_public, Вы писали:


_>- clang конечно хорош своими сообщениями об ошибках и поддержкой стандарта, но по оптимизации уступает всем остальным.


Вроде пару лет назад он догонял gcc, что то поменялось?
Re[11]: Winbuntu
От: alex_public  
Дата: 06.06.18 19:07
Оценка:
Здравствуйте, steep8, Вы писали:

_>>- clang конечно хорош своими сообщениями об ошибках и поддержкой стандарта, но по оптимизации уступает всем остальным.

S>Вроде пару лет назад он догонял gcc, что то поменялось?

Что-то не припомню такой информации.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.