You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -153,7 +153,7 @@ CMake Error: The source "/home/artiom/user/cpp-network-tasks/src/CMakeLists.txt"
153
153
### Почему используется Linux?
154
154
155
155
- Потому что, на Linux и BSD системах работают большинство сетевых приложений.
156
-
-На Linux работают авторы.
156
+
- Linux используют авторы.
157
157
- Кроме Linux есть множество других ОС, и рассмотреть особенности каждой невозможно.
158
158
- Перевод кода на Windows оговорён.
159
159
- По возможности, код и так кроссплатформенный.
@@ -162,7 +162,7 @@ CMake Error: The source "/home/artiom/user/cpp-network-tasks/src/CMakeLists.txt"
162
162
163
163
### Могу ли я собрать код на Windows?
164
164
165
-
Да, возможно собрать часть кода. Сборка проверялась на MS Visual Studio 2019.
165
+
Да, возможно собрать часть кода. Сборка проверялась на MS Visual Studio 2019 и 2022.
166
166
Подробнее о поддержке CMake в MSVS, вы можете [прочитать у Microsoft](https://github.com/MicrosoftDocs/cpp-docs/blob/main/docs/build/cmake-projects-in-visual-studio.md).
167
167
Чтобы собрать код, надо открыть корневой CMakeLists.txt, как CMake проект.
168
168
@@ -171,14 +171,12 @@ CMake Error: The source "/home/artiom/user/cpp-network-tasks/src/CMakeLists.txt"
171
171
- Есть код специфичный для Linux, например перехватчик вызовов, который будет собираться и работать только на этой платформе.
172
172
- Некоторый код просто не был адаптирован для Windows, и его сборка выключена.
173
173
- Есть редкие примеры, которые собираются, но работать корректно не будут (один из таких - асинхронный сервер на `select()`).
174
-
Оно не работает, потому что не было достаточно времени и мотивации, чтобы доработать под Windows.
175
-
Если вы считаете, что можете доделать такой код - You're welcome.
176
174
- В Windows есть не все библиотеки, а CMake не имеет, например модуля для поиска Qt, если Qt не установлен.
177
175
Это приводит к тому, что пример не просто нельзя собрать, если чего-то не хватает, а падает сборка.
178
176
Конечно, возможно это исправить, если вы считаете, что нужно, репозиторий открыт для правок.
179
177
- Надо установить [Boost](https://sourceforge.net/projects/boost/files/boost-binaries/).
180
178
181
-
Также, есть некоторый код, специфичный для Windows, но в уроках он, как правило, не упоминается.
179
+
Также, есть некоторый код, специфичный для Windows.
В корневой директории имеется скрипт `install_git_hooks.py`, данный скрипт проверяет наличие установленного инструмента pre-commit, и, если его нет, устанавливает его. pre-commit - это инструмент для автоматизации проверок и тестов перед фиксацией (коммитом) изменений в репозитории Git. Он позволяет определить набор проверок и скриптов, которые должны быть выполнены перед тем, как изменения будут зафиксированы в репозитории. Использование pre-commit помогает поддерживать качество кода, уменьшает вероятность внесения ошибок и упрощает совместную работу.
411
409
@@ -418,10 +416,10 @@ pip3 install pre-commit
418
416
После чего перейти в корневой репозиторий `network-programming-book-code` и ввести команду:
0 commit comments