|
|
|
@ -332,7 +332,7 @@ for (double x : numbers) {
|
|
|
|
|
в CodeBlocks это может быть `bin\Debug`. При затруднениях в работе с консолью
|
|
|
|
|
можно воспользоваться [руководством][cmd].
|
|
|
|
|
|
|
|
|
|
##### Командная строка Windows
|
|
|
|
|
#### Командная строка Windows
|
|
|
|
|
|
|
|
|
|
Командная строка (терминал) запускается через *Win+R*, `cmd` или путем ввода
|
|
|
|
|
`cmd` в строку адреса в «Проводнике» и нажатия *Enter.* Текст `C:\>` слева
|
|
|
|
@ -344,6 +344,39 @@ for (double x : numbers) {
|
|
|
|
|
символов имени каталога, и Windows дополнит путь. Если нужно повторить
|
|
|
|
|
одну из предыдущих команд, стрелки вверх и вниз проматывают историю.
|
|
|
|
|
|
|
|
|
|
#### Запуск программ без CodeBlocks
|
|
|
|
|
|
|
|
|
|
Находясь в каталоге с `*.exe`, можно попробовать запустить его:
|
|
|
|
|
|
|
|
|
|
```cmd
|
|
|
|
|
C:\lab01\bin\Debug> lab01
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Однако это может привести к сообщению об ошибке
|
|
|
|
|
(имя библиотеки может быть иным):
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
Программа не может быть выполнена, потому что библиотека libstd++.dll не найдена.
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Подробнее тема библиотек будет рассмотрена позже в курсе лекций и ЛР.
|
|
|
|
|
Чтобы сделать файл `lab01.exe` независимым от внешних библиотек,
|
|
|
|
|
нужно в CodeBlocks:
|
|
|
|
|
|
|
|
|
|
* Открыть диалог *Settings → Compiler → Compiler settings*
|
|
|
|
|
и поставить галочки *Static libstdc++ [-static-libstdc++]*
|
|
|
|
|
и *Static linking [-static]*.
|
|
|
|
|
|
|
|
|
|
* Пересобрать проект *Ctrl+F11* или *Build → Rebuild*
|
|
|
|
|
или нажать на иконку с голубыми стрелочками.
|
|
|
|
|
|
|
|
|
|
При использовании CMake, например, в CLion,
|
|
|
|
|
нужно в `CMakeLists.txt` после `executable(xxx ...)` добавить такую строку:
|
|
|
|
|
|
|
|
|
|
```CMakeLists.txt
|
|
|
|
|
target_link_options(xxx PRIVATE -static -static-libstdc++)
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### Стандартные потоки и их перенаправление
|
|
|
|
|
|
|
|
|
|
Обычно для простоты говорят, что ввод происходит с клавиатуры, а вывод — на
|
|
|
|
|