Как скомпилировать С++ файл в исполняемый и какие ошибки могут возникнуть при компиляции?
Исходный код на языке С компилируется с помощью gcc
Исходный код на языке С++ компилируется с помощью g++
Например у нас есть портабл версия программы codeblocks-17.12mingw-nosetup
Компилятор g++ лежит в папке \MinGW\bin, его можно скопировать в папку где лежит исходник.
Необходимо в винде в переменную окружения PATH добавить: С:\codeblocks-17.12mingw-nosetup\MinGW\libexec\gcc\mingw32\5.1.0;С:\codeblocks-17.12mingw-nosetup\MinGW\bin
Комп можно не перегружать, достаточно открыть новое окно cmd чтобы изменения вступили в силу.
Запускать компилятор так: g++ main.cpp
MinGW/bin/../lib/gcc/mingw32/5.1.0/../../../../mingw32/bin/ld.exe: E:\Temp\ccWiLHrY .o: bad reloc address 0x0 in section `.ctors' collect2.exe: error: ld returned 1 exit status
убедитесь что PATH верно прописан
undefined reference to `std::ios_base::Init::~Init()'
error: CreateProcess: No such file or directory
error: no include path in which to search for iostream
Данные ошибки также влияют из за PATH
Исходный код на языке С++ компилируется с помощью g++
Например у нас есть портабл версия программы codeblocks-17.12mingw-nosetup
Компилятор g++ лежит в папке \MinGW\bin, его можно скопировать в папку где лежит исходник.
Необходимо в винде в переменную окружения PATH добавить: С:\codeblocks-17.12mingw-nosetup\MinGW\libexec\gcc\mingw32\5.1.0;С:\codeblocks-17.12mingw-nosetup\MinGW\bin
Комп можно не перегружать, достаточно открыть новое окно cmd чтобы изменения вступили в силу.
Запускать компилятор так: g++ main.cpp
Какие ошибки могут ожидать в процессе компиляции
MinGW/bin/../lib/gcc/mingw32/5.1.0/../../../../mingw32/bin/ld.exe: E:\Temp\ccWiLHrY .o: bad reloc address 0x0 in section `.ctors' collect2.exe: error: ld returned 1 exit status
убедитесь что PATH верно прописан
undefined reference to `std::ios_base::Init::~Init()'
error: CreateProcess: No such file or directory
error: no include path in which to search for iostream
Данные ошибки также влияют из за PATH
Оставить свой ответ: