Exe — Компиляция C++ кода в bin


Содержание

Как в Visual Studio Code компилировать код Си?

Устанавливал Microsoft C/C++ extension.

Что устанавливать из Visual Studio 2020 Community, если собираюсь писать код на Си?

  • Вопрос задан более года назад
  • 7346 просмотров

Note: The C/C++ extension does not include a C++ compiler or debugger. You will need to install these tools or use those already installed on your computer. Popular C++ compilers are mingw-w64 for Windows, Clang for XCode for macOS, and GCC on Linux. Make sure your compiler executable is in your platform path so the extension can find it. The extension also supports the Windows Subsystem for Linux.

. создаёте c_cpp_properties.json, в вашем воркспэйсе и прописываете:

Предварительно скачав mingw-w64/GCC.
Думаю вас это не устроит, но этого мало, нужен tasks.json примерно такого вида:

А параметры для вашего компилятора думаю найдёте сами, из хода выполнения в DevC`и++, «command» это обычное выполнение в cmd, на сколько знаю для «C`и» будет нужен gcc.exe, параметры будут содержать в себе пути к стандартным библиотекам и тип компилируемого приложения по типу консольное или оконное.

2. Обычный проект C++ пустой, ручкой создаёшь файл с расширением «*.c», и в параметрах проекта поставить компилятор gcc или Си (что-то такое)

Пошаговое руководство. Компиляция машинной программы на языке C++ из командной строки Walkthrough: Compiling a Native C++ Program on the Command Line

Visual Studio включает компилятор командной строки C++ , который можно использовать для создания всех элементов из базовых консольных приложений для универсальная платформа Windows приложений, классических приложений, драйверов устройств и компонентов .NET. Visual Studio includes a command-line C++ compiler that you can use to create everything from basic console apps to Universal Windows Platform apps, Desktop apps, device drivers, and .NET components.

В этом пошаговом руководстве вы создадите программу в стиле C++ «обычный», «Привет, мир», используя текстовый редактор, а затем компилируете ее в командной строке. In this walkthrough, you create a basic, «Hello, World»-style C++ program by using a text editor, and then compile it on the command line. Если вы хотите опробовать интегрированную среду разработки Visual Studio вместо использования командной строки, см. раздел Пошаговое руководство. Работа с проектамиC++и решениями () или Использование интегрированной среды разработки Visual Studio для C++ разработки классических приложений. If you’d like to try the Visual Studio IDE instead of using the command line, see Walkthrough: Working with Projects and Solutions (C++) or Using the Visual Studio IDE for C++ Desktop Development.

В этом пошаговом руководстве вместо примера программы, приведенного далее, можно использовать собственную программу на Visual C++. Кроме того, можно использовать образец кода на языке Visual C++ из другого раздела справки. In this walkthrough, you can use your own Visual C++ program instead of typing the one that’s shown, or you can use a Visual C++ code sample from another help article.

Необходимые компоненты Prerequisites

Для выполнения этого пошагового руководства необходимо установить Visual Studio и необязательную разработку настольных C++ приложений с рабочей нагрузкой или средства сборки командной строки для Visual Studio. To complete this walkthrough, you must have installed either Visual Studio and the optional Desktop development with C++ workload, or the command-line Build Tools for Visual Studio.

Visual Studio — это мощная интегрированная среда разработки (IDE), которая поддерживает полнофункциональный редактор, диспетчеры ресурсов, отладчики и компиляторы для многих языков и платформ. Visual Studio is a powerful integrated development environment (IDE) that supports a full-featured editor, resource managers, debuggers, and compilers for many languages and platforms. Сведения о том, как скачать и установить Visual Studio, включая бесплатный выпуск Visual Studio Community Edition, а также включить поддержку C/C++ Development, см. в разделе Поддержка установки C++ в Visual Studio. For information on how to download and install Visual Studio, including the free Visual Studio Community edition, and to include support for C/C++ development, see Install C++ support in Visual Studio.

Средства сборки для Visual Studio устанавливают только компиляторы, средства и библиотеки командной строки, необходимые для сборки C и C++ программ. The Build Tools for Visual Studio installs only the command-line compilers, tools, and libraries you need to build C and C++ programs. Это идеальный вариант для создания лабораторий и учебных занятий, а установка выполняется относительно быстро. It’s perfect for build labs or classroom exercises and installs relatively quickly. Чтобы установить только программы командной строки, найдите средства сборки для Visual Studio на странице загрузки Visual Studio . To install only the command-line tools, look for Build Tools for Visual Studio on the Visual Studio Downloads page.

Прежде чем можно будет выполнить сборку C C++ или программы в командной строке, необходимо убедиться, что средства установлены и к ним можно получить доступ из командной строки. Before you can build a C or C++ program on the command line, you must verify that the tools are installed, and that you can access them from the command line. Визуальный C++ элемент имеет сложные требования к среде командной строки для поиска используемых инструментов, заголовков и библиотек. Visual C++ has complex requirements for the command-line environment to find the tools, headers, and libraries it uses. C++ Визуальный элемент нельзя использовать в простом окне командной строки без выполнения какой-либо подготовки. You can’t use Visual C++ in a plain command prompt window without doing some preparation. К счастью, C++ визуальные элементы устанавливают ярлыки для запуска командной строки разработчика, для которой настроена среда для сборок с командной строкой. Fortunately, Visual C++ installs shortcuts for you to launch a developer command prompt that has the environment set up for command line builds. К сожалению, имена ярлыков командной строки разработчика и места их расположения отличаются практически во всех версиях визуальных C++ элементов и в различных версий Windows. Unfortunately, the names of the developer command prompt shortcuts and where they’re located are different in almost every version of Visual C++ and on different versions of Windows. Первая задача пошагового руководства — поиск нужной для использования. Your first walkthrough task is finding the right one to use.

Ярлык командной строки разработчика автоматически задает правильные пути для компилятора и средств, а также для всех необходимых заголовков и библиотек. A developer command prompt shortcut automatically sets the correct paths for the compiler and tools, and for any required headers and libraries. Эти значения среды необходимо задать самостоятельно, если используется обычный окно командной строки . You must set these environment values yourself if you use a regular Command Prompt window. Дополнительные сведения см. в статье Установка переменных пути и среды при построении из командной строки. For more information, see Set the Path and Environment Variables for Command-Line Builds. Рекомендуется использовать ярлык командной строки разработчика вместо создания собственных. We recommend you use a developer command prompt shortcut instead of building your own.

Открытие командной строки разработчика Open a developer command prompt

Если вы установили Visual Studio 2020 или более поздней версии в Windows 10, откройте меню Пуск и выберите все приложения. If you have installed Visual Studio 2020 or later on Windows 10, open the Start menu and choose All apps. Прокрутите вниз и откройте папку Visual Studio (не приложение Visual Studio). Scroll down and open the Visual Studio folder (not the Visual Studio application). Выберите Командная строка разработчика для VS , чтобы открыть окно командной строки. Choose Developer Command Prompt for VS to open the command prompt window.

Если вы установили Microsoft Visual C++ Build tools 2015 в Windows 10, откройте меню Пуск и выберите все приложения. If you have installed Microsoft Visual C++ Build Tools 2015 on Windows 10, open the Start menu and choose All apps. Прокрутите вниз и откройте папку C++ средства визуальной сборки . Scroll down and open the Visual C++ Build Tools folder. Выберите Visual C++ 2015 Командная строка Native Tools x86 , чтобы открыть окно командной строки. Choose Visual C++ 2015 x86 Native Tools Command Prompt to open the command prompt window.

Можно также использовать функцию поиска Windows для поиска «Командная строка разработчика» и выбрать ту, которая соответствует установленной версии Visual Studio. You can also use the Windows search function to search for «developer command prompt» and choose one that matches your installed version of Visual Studio. Используйте ярлык, чтобы открыть окно командной строки. Use the shortcut to open the command prompt window.

Затем убедитесь, что Командная C++ строка Visual Developer настроена правильно. Next, verify that the Visual C++ developer command prompt is set up correctly. В окне командной строки введите cl и убедитесь, что выходные данные выглядят примерно так: In the command prompt window, enter cl and verify that the output looks something like this:

В зависимости от версии Visual C++ и установленных обновлений могут возникать различия в текущем каталоге или номерах версий. There may be differences in the current directory or version numbers, depending on the version of Visual C++ and any updates installed. Если приведенный выше результат похож на отображаемый, то можно приступать к сборке C или C++ программ в командной строке. If the above output is similar to what you see, then you’re ready to build C or C++ programs at the command line.

Цукерберг рекомендует:  Парсинг HTML и скрепинг с помощью простой библиотеки HTML DOM

Если при выполнении команды CL выдается сообщение об ошибке «CL» не распознается как внутренняя или внешняя команда, возможно, используется программа или пакетный файл, ошибка C1034 или ошибка LNK1104, то либо вы не используете командную строку разработчика, либо что-то не так с установкой Visual C++. If you get an error such as «‘cl’ is not recognized as an internal or external command, operable program or batch file,» error C1034, or error LNK1104 when you run the cl command, then either you are not using a developer command prompt, or something is wrong with your installation of Visual C++. Для продолжения работы необходимо устранить эту проблему. You must fix this issue before you can continue.

Если вы не можете найти ярлык командной строки разработчика или при вводе cl появляется сообщение об ошибке, то, возможно, возникла проблема с установкой визуального C++ элемента. If you can’t find the developer command prompt shortcut, or if you get an error message when you enter cl , then your Visual C++ installation may have a problem. Попробуйте переустановить визуальный C++ компонент в Visual Studio или переустановите средства Microsoft Visual C++ Build Tools. Try reinstalling the Visual C++ component in Visual Studio, or reinstall the Microsoft Visual C++ Build Tools. Не перейдем к следующему разделу, пока он не будет работать. Don’t go on to the next section until this works. Дополнительные сведения об установке и устранении неполадок C++визуального элемента см. в статье Установка Visual Studio. For more information about installing and troubleshooting Visual C++, see Install Visual Studio.

В зависимости от версии Windows на компьютере и конфигурации безопасности системы может потребоваться щелкнуть правой кнопкой мыши, чтобы открыть контекстное меню для ярлыка командной строки разработчика, а затем выбрать Запуск от имени администратора , чтобы успешно выполнить сборку и запустить программу, созданную в ходе этого пошагового руководства. Depending on the version of Windows on the computer and the system security configuration, you might have to right-click to open the shortcut menu for the developer command prompt shortcut and then choose Run as administrator to successfully build and run the program that you create by following this walkthrough.

Создание исходного файла C++ с визуальным кодом и его компиляция в командной строке Create a Visual C++ source file and compile it on the command line

В окне командной строки разработчика введите md c:\hello , чтобы создать каталог, а затем введите cd c:\hello , чтобы перейти к этому каталогу. In the developer command prompt window, enter md c:\hello to create a directory, and then enter cd c:\hello to change to that directory. В этом каталоге создаются исходный файл и скомпилированная программа. This directory is where your source file and the compiled program are created in.

Введите notepad hello.cpp в окне командной строки. Enter notepad hello.cpp in the command prompt window.

Выберите Да , когда Блокнот предложит создать файл. Choose Yes when Notepad prompts you to create a file. На этом шаге открывается пустое окно блокнота, готовое к вводу кода в файл с именем Hello. cpp. This step opens a blank Notepad window, ready for you to enter your code in a file named hello.cpp.

В Блокноте введите следующие строки кода: In Notepad, enter the following lines of code:

Этот код представляет собой простую программу, которая записывает на экран одну строку текста, а затем выполнит выход. This code is a simple program that will write one line of text on the screen and then exit. Для сведения числа ошибок к минимуму скопируйте этот код и вставьте его в Блокнот. To minimize errors, copy this code and paste it into Notepad.

Сохраните файл. Save your work! В Блокноте, в меню Файл выберите Сохранить. In Notepad, on the File menu, choose Save.

Поздравляем, вы создали C++ исходный файл Hello. cpp, который готов к компиляции. Congratulations, you’ve created a C++ source file, hello.cpp, that is ready to compile.

Вернитесь в окно командной строки разработчика. Switch back to the developer command prompt window. Введите dir в командной строке, чтобы получить список содержимого каталога к:\хелло. Enter dir at the command prompt to list the contents of the c:\hello directory. Вы увидите исходный файл Hello. cpp в списке каталогов, который выглядит примерно так: You should see the source file hello.cpp in the directory listing, which looks something like:

Даты и другие сведения будут отличаться на вашем компьютере. The dates and other details will differ on your computer. Если вы не видите файл исходного кода Hello. cpp, убедитесь, что вы изменили созданный вами каталог к:\хелло, и в блокноте сохраните исходный файл в этом каталоге. If you don’t see your source code file, hello.cpp, make sure you’ve changed to the c:\hello directory you created, and in Notepad, make sure that you saved your source file in this directory. Также убедитесь, что исходный код сохранен с расширением CPP, а не с расширением txt. Also make sure that you saved the source code with a .cpp file name extension, not a .txt extension.

В командной строке разработчика введите cl /EHsc hello.cpp , чтобы скомпилировать программу. At the developer command prompt, enter cl /EHsc hello.cpp to compile your program.

Компилятор cl.exe создаст OBJ-файл, содержащий скомпилированный код, а затем запустит компоновщик для создания исполняемой программы с именем hello.exe. The cl.exe compiler generates an .obj file that contains the compiled code, and then runs the linker to create an executable program named hello.exe. Это имя отображается в строках информации, выводимой компилятором. This name appears in the lines of output information that the compiler displays. Выходные данные компилятора должны выглядеть примерно так: The output of the compiler should look something like:

Если появляется сообщение об ошибке «CL» не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл, ошибка C1034 или ошибка LNK1104, Командная строка разработчика настроена неправильно. If you get an error such as «‘cl’ is not recognized as an internal or external command, operable program or batch file,» error C1034, or error LNK1104, your developer command prompt is not set up correctly. Чтобы получить сведения о том, как устранить эту проблему, вернитесь к разделу Открытие командной строки разработчика . For information on how to fix this issue, go back to the Open a developer command prompt section.

Если вы получаете другое сообщение об ошибке компилятора или компоновщика, просмотрите исходный код, чтобы исправить ошибки, а затем сохраните его и снова запустите компилятор. If you get a different compiler or linker error or warning, review your source code to correct any errors, then save it and run the compiler again. Для получения сведений о конкретных ошибках используйте поле поиска на этой странице MSDN, чтобы найти номер ошибки. For information about specific errors, use the search box on this MSDN page to look for the error number.

Чтобы запустить программу hello.exe, в командной строке введите hello . To run the hello.exe program, at the command prompt, enter hello .

Программа выводит следующий текст и закрывается: The program displays this text and exits:

Поздравляем, вы выполнили компиляцию и C++ запуск программы с помощью программ командной строки. Congratulations, you’ve compiled and run a C++ program by using the command-line tools.


Следующие шаги Next steps

Этот пример «Hello, World» состоит в том, что это C++ так же просто, как программа может получить. This «Hello, World» example is about as simple as a C++ program can get. Реальные программы имеют файлы заголовков и другие исходные файлы, связываются в библиотеках и выполняют полезную работу. Real world programs have header files and more source files, link in libraries, and do useful work.

Вы можете использовать шаги, описанные в этом пошаговом C++ руководстве, для создания собственного кода вместо того, чтобы вводить приведенный пример кода. You can use the steps in this walkthrough to build your own C++ code instead of typing the sample code shown. Вы также можете создать множество C++ программных примеров кода, которые можно найти в других местах. You can also build many C++ code sample programs that you find elsewhere. Вы можете разместить исходный код и собрать приложения в любой доступный для записи каталог. You can put your source code and build your apps in any writeable directory. По умолчанию интегрированная среда разработки Visual Studio создает проекты в папке «документы» в подпапке «проекты» папки Visual Studio с именем для вашей версии Visual Studio. By default, the Visual Studio IDE creates projects in your Documents folder, in a Projects subfolder of a Visual Studio folder named for your version of Visual Studio.

Чтобы скомпилировать программу с дополнительными файлами исходного кода, введите их в командной строке, например: To compile a program that has additional source code files, enter them all on the command line, like:

cl /EHsc file1.cpp file2.cpp file3.cpp

Параметр командной строки /EHsc указывает компилятору на необходимость обработки исключений C++. The /EHsc command-line option instructs the compiler to enable C++ exception handling. Дополнительные сведения см. в статье /EH (модель обработки исключений). For more information, see /EH (Exception Handling Model).

При указании дополнительных исходных файлов компилятор использует первый входной файл для создания имени программы. When you supply additional source files, the compiler uses the first input file to create the program name. В этом случае выводится программа с именем file1. exe. In this case, it outputs a program called file1.exe. Чтобы изменить имя на PROGRAM1. exe, добавьте параметр компоновщика /out : To change the name to program1.exe, add an /out linker option:

cl /EHsc file1.cpp file2.cpp file3.cpp /link /out:program1.exe

Чтобы автоматически перехватывать другие ошибки программирования, рекомендуется выполнить компиляцию с помощью параметра уровня предупреждений /W3 или /W4 : And to catch more programming mistakes automatically, we recommend you compile by using either the /W3 or /W4 warning level option:

Цукерберг рекомендует:  Password - c# интересные идеи оптимизации

cl /W4 /EHsc file1.cpp file2.cpp file3.cpp /link /out:program1.exe

Компилятор CL. exe содержит множество дополнительных параметров, которые можно применять для создания, оптимизации, отладки и анализа кода. The compiler, cl.exe, has many more options you can apply to build, optimize, debug, and analyze your code. Для быстрого списка введите cl /? в командной строке разработчика. For a quick list, enter cl /? at the developer command prompt. Можно также выполнять компиляцию и компоновку отдельно и применять параметры компоновщика в более сложных сценариях сборки. You can also compile and link separately and apply linker options in more complex build scenarios. Дополнительные сведения о параметрах компилятора и компоновщика и использовании см. в разделе Справочник по языкуC++ C/здание. For more information on compiler and linker options and usage, see C/C++ Building Reference.

Для настройки и создания более сложных проектов в командной строке можно использовать NMAKE и файлы Makefile, а также файл MSBuild и проект. You can use NMAKE and makefiles, or MSBuild and project files to configure and build more complex projects on the command line. Дополнительные сведения об использовании этих средств см. в разделе Справочник по NMAKE и MSBuild. For more information on using these tools, see NMAKE Reference and MSBuild.

C и C++ языки похожи, но не совпадают. The C and C++ languages are similar, but not the same. Компилятор КОМПИЛЯТОРОМ MSVC использует простое правило для определения языка, используемого при компиляции кода. The MSVC compiler uses a simple rule to determine which language to use when it compiles your code. По умолчанию компилятор КОМПИЛЯТОРОМ MSVC обрабатывает все файлы, которые заканчиваются на c как исходный код C, и все файлы, заканчивающиеся на CPP, C++ как исходный код. By default, the MSVC compiler treats all files that end in .c as C source code, and all files that end in .cpp as C++ source code. Чтобы заставить компилятор обрабатывать все файлы как C++ независимые от расширения имени файла, используйте параметр компилятора /TP . To force the compiler to treat all files as C++ non-dependent on file name extension, use the /TP compiler option.

Компилятор КОМПИЛЯТОРОМ MSVC включает библиотеку времени выполнения C (CRT), совместимую с ISO C99 Standard, но не строго соответствующей требованиям. The MSVC compiler includes a C Runtime Library (CRT) that is compatible with the ISO C99 standard, but not strictly compliant. В большинстве случаев переносимый код будет компилироваться и выполняться должным образом. In most cases, portable code will compile and run as expected. Визуальный C++ элемент не поддерживает некоторые изменения CRT в ISO C11. Visual C++ doesn’t support some of the CRT changes in ISO C11. Некоторые библиотечные функции и имена функций POSIX не рекомендуются компилятором КОМПИЛЯТОРОМ MSVC. Certain library functions and POSIX function names are deprecated by the MSVC compiler. Функции поддерживаются, но предпочтительные имена изменились. The functions are supported, but the preferred names have changed. Дополнительные сведения см. в разделе функции безопасности в CRT и Предупреждение компилятора (уровень 3) C4996. For more information, see Security Features in the CRT and Compiler Warning (level 3) C4996.

Exe — Компиляция C++ кода в bin

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

  • В Windows для работы с командной строкой можно использовать файл CMD.EXE , который поставляетя с системой и лежит в каталоге system32. Полный путь к файлу может выглядеть так: C:\Windows\System32\cmd.exe

В общем, нужно писать полные пути. Такая делема в Windows решается путём добавления путей к компилятору в переменную окружения PATH. После добавления путей в PATH можно спокойно компилировать программы, используя простое название компилятора: g++

  • C:\MinGW\bin\g++ C:\C++\HelloWorld\Hello.cpp C:\C++\HelloWorld\Hello.exe
  • g++ C:\C++\HelloWorld\Hello.cpp -o C:\C++\HelloWorld\Hello.exe

Содержимое текстового документа:

Если вы дописывали пути в переменную PATH (о чём писалось чуть ранее), то вам можно писать короче:

Если при добавлении путей в переменную PATH ошибок допущено не было, то короткая запись сработает. Написали указанную строчку, подтверждаем нажатием клавиши Enter, немного ждём, и программа готова! Готовая программа называется Hello.exe , лежит в C:\C++\HelloWorld\ (в чём легко убедиться, если зайти по этому пути и посмотреть, какие там файлы ).

  • Продолжение темы: С++ MinGW Аргументы командной строки для начинающих

12 комментариев: С++ для начинающих. MinGW. Командная строка. Работа из консоли Windows

У меня выдаёт ошибку «ld returned 1 exit status» в MSYS. Помогите, что делать?

Автор сайта отвечает :
Я так не смогу помочь. Одна из возможных причин — диск защищен от записи. Например в Win7 диск C:\ часто защищен от записи и при попытке скомпилировать код на него, выходной файл не сможет создаться.

Спасибо Вам за этот материал! Это как раз то, что я искал. Объяснено всё очень доходчиво. В итоге у меня всё получилось!

Зачем при компиляции указывать полный путь к g++ ? Ведь он уже есть в PATH.

…>g++ C:\C++\HelloWorld\Hello.cpp -o C:\C++\HelloWorld\Hello.exe

Автор сайта отвечает :
Когда писал не думал об этом. Да, достаточно g++, если есть в PATH. Допишу это.

При попытке ввести в командной строке:g++ C:\C++\HelloWorld\Hello.cpp -o C:\C++\HelloWorld\Hello.exe
(с пробелами)
выходит ошибка g++: fatal error: no input files compilation terminated.

А если ввести всю команду целиком без пробелов, выходит ошибка «Синтаксическая ошибка в имени файла, имени папки или метке тома».
Так что же делать?

Автор сайта отвечает :
Похоже, что в прописывании пути допущена ошибка. Легко проверить. Войдите в каталог с файлом *.cpp. Скопируйте мышью путь к файлу и вставьте этот путь в командную строку после g++, затем допишите через слеш имя компилируемого файла. Во вторую часть команды тоже вставьте мышью путь и через слеш допишите название конечного файла. Нажмите Enter. Если скомпилируется, то все дело в неправильном написании пути к файлу. (Русские буквы, регистр не тот или еще какие-то свои причины).
Наиболее вероятно, что при создании папок получилось назвать папку используя русские символы. рус (С) и анлгл (С) очень похожи, например.

10.12.2015 в 3:45пп Irina712 говорит:
Раскладка и написание корректны.
Методом научного тыка выявлено, что программа компилируется, только если вместо пробелов поставить знак >
Это для информации, может кому пригодится.

Возможные проблемы:
1) Может не все файлы скачать с зеркала (у меня полный размер папки MinGW получился 238 МБ (250 530 318 байт)) (в первый раз скачало намного меньше файлов чем должно было, поэтому не работало). В зависимости от версии, размер может меняться, но не должен быть совсем маленьким.
2) При компилировании, возможна всплывающая ошибка «….не найден zlib1.dll » – нужно скачать/проверить антивирусом и поместить его в C:\WINDOWS\system32

3) По завершении компиляции, возможно проверить программу прямо из командной строки. (из командной строки делается следующее: указывают путь к полученному после компиляции файлу программы и имя exe файла. Пример: C:\Documents and Settings\Admin>D:\cpp\ pr2.exe ).
Все имена и пути надо прописывать на англ.яз.
Пример: name.cpp
Нужно, чтобы путь к программе не содержал русских букв, и в пути не было пробелов

Пример ( правильно ) : D:\cpp\pr2.exe
Пример ( неправильно ): D:\Program Files\Common Files\pr2.exe
D:\Мои программы\пр2.exe
D:\Программы\пр2.exe >

Если у вас в программе имелась русскоязычная строка/строки, по выполнению программы можно увидеть «иероглифы».

В этом случае, исходный код программы можно попробовать дополнить следующими строками:
— перед функцией int main ()

Компиляция программы на C++ с помощью gcc

вопрос: как скомпилировать программу на C++ с помощью компилятора gcc?


и когда я пытаюсь скомпилировать info.c

разве компилятор gcc не способен компилировать программы на C++? На связанной заметке, в чем разница между gcc и g++. Спасибо,

7 ответов

gcc может фактически скомпилировать код c++ просто отлично. Ошибки, которые вы получили линкер ошибки, а не ошибки компилятора.

скорее всего, если вы измените строку компиляции следующим образом:

что делает его ссылкой на стандартную библиотеку c++, тогда он будет работать нормально.

однако, вы должны просто сделать свою жизнь проще и использовать g++.

EDIT:

реп говорит, что лучше в комментарии другой ответ:

[. ] gcc будет выберите правильный компилятор back-end на основе расширения файла (т. е. компилировать .c как C и a .cc Как c++) ссылки и файлы от просто стандартные вспомогательные библиотеки C и GCC по умолчанию, независимо от языков ввода; g++ также выберет правильный на основе расширения, за исключением я думаю, что он компилирует все с Источник как C++ вместо (т. е. он компилирует обе .c and .cc as C++) и включает в себя libstdc++ в своем шаге ссылки независимо языков ввода.

Если вы дадите код .расширение c компилятор считает, что это код C, а не c++. И драйвер компилятора C++ называется g++, Если вы используете драйвер gcc, у вас будут проблемы с компоновщиком, так как стандартные библиотеки C++ не будут связаны по умолчанию. Итак, вы хотите:

и даже не рассматривайте использование верхнего регистра .Расширение C, если вы никогда не хотите переносить свой код и готовы ненавидеть тех, с кем работаете.

Exe — Компиляция C++ кода в bin

но не приводится примера как заставить эту программу работать в каком расширении сохранять или что то тому подобное.

Пробовал искать в интернете наткнулся на вот это:
gcc c:\test\1.txt -o c:\test\1.exe
или
gcc -с c:\test\1.txt -o c:\test\1.exe

ни одно ни другое не помогает. выдает ошибку мол нету файла gcc
Скажите пожалуйста как компилировать программы.

28.04.2011, 18:09 #2

А без компиляторов вообще невкакую?

Можно рассказать какой то краткий и не сложный способ конвертирования программы в TXT формате в EXE ? Заранее спс

28.04.2011, 18:16 #3

Вам нужна среда разработки — это программы типа Visual Studio и т.п., лично я использую Code::Blocks.
Создаете проект, например, Console Application, в окне программы видите код. Затем (в Code::Blocks), нажимаете «build», программа создает exe — файл, если выбран режим debug — в папке ./debug, если выбран release — в папке ./release

А без компиляторов вообще невкакую?

Можно рассказать какой то краткий и не сложный способ конвертирования программы в TXT формате в EXE ? Заранее спс

LibreBay

Статьи про ОС Ubuntu. Языки программирования Си и C++.
Инструменты разработки и многое другое.

понедельник, 5 декабря 2020 г.

Как скомпилировать программу на C/C++ в Ubuntu

Помню, когда я только начинал программировать, у меня возник вопрос: «Как скомпилировать программу на C в Ubuntu?» Для новичков это не легкая задача, как может показаться на первый взгляд.

Мой путь изучения C начался с бестселлера «Брайан Керниган, Деннис Ритчи, Язык программирования C, 2-е издание». Там рассказывается как скомпилировать программу в операционной системе Unix, но этот способ не работает в Linux. Авторы книги выкрутились, написав следующее:

В других системах это процедура будет отличаться. Обратитесь к справочнику или специалисту за подробностями.

Текстовый редактор gedit

Для написания первых программ подойдет обычный, используемый по умолчанию в Ubuntu, текстовый редактор с подсветкой синтаксиса — gedit.

28.04.2011, 18:20 #4
Рис. 1. Запуск текстового редактора.

Первой программой по традиции является «Hello, World!», выводящее приветствие на экран:

Печатаем или копируем текст программы в gedit и сохраняем в файл Hello.c , например, на рабочий стол. Не самое лучше место для сохранения, но это позволит рассмотреть случай, когда в имени директории содержится пробел.

Рис. 2. Программа hello, World.

Компиляция программы на C

Для установки требуется ввести пароль, при вводе которого может сложиться впечатление, что ничего не происходит, но на самом деле терминал просто в целях безопасности не отображает символы.

Далее в терминале нам необходимо перейти в директорию, куда сохранили файл с текстом программы. Перемещение выполняется командой cd (англ. change directory — изменить каталог). Чтобы воспользоваться командой в начале пишется cd , затем через пробел путь , куда нужно перейти.

Для перехода на рабочий стол, команда будет следующей:

Обратите внимание на символ обратной косой черты \ в имени директории Рабочий стол . Обратная косая экранирует пробел, и сообщает команде cd , что пробел и следующие за ним символы являются частью имени. Символ

в начале пути обозначает путь до домашней папки пользователя.

Для просмотра содержимого директории применяется команда ls (сокращение от англ. list).

Рис. 3. Работа в терминале.

Команда компиляции для программы на C выглядит следующим образом:

где:

  • gcc — компилятор для языка программирования C;
  • -Wall — ключ вывода всех предупреждений компилятора;
  • -o hello — с помощью ключа -o указывается имя выходного файла;
  • hello.c — имя нашего исходного файла, который компилируем.

Выполнив команду ls , увидим, что появилась наша скомпилированная программа hello , отмеченная цветом, обозначающим исполняемые программы.

В завершение запустим hello , вводом имени программы с префиксом ./ :


Префикс ./ сообщает терминалу о необходимости выполнить программу с заданным именем в текущем каталоге. (Точка — это условное название текущего каталога.)

Рис. 4. Работа в терминале, продолжение.

Компиляция программы на С++

Программы на C++ компилируются аналогично, как и программы на C. «Hello, World!» на C++ можно написать так:

Сохраняем текст программы в файл под именем hello2.cpp . Таким образом, команда компилирования будет иметь вид:

Для запуска результата вводим в терминале:

Заключение

Данный способ позволяет скомпилировать программу лишь из одного файла с исходным кодом. Но этого вполне достаточно, чтобы начать изучение языков программирования C/C++ по книгам или по статьям в интернете.

Более подробно об программировании в Ubuntu или в любом другом дистрибутиве Linux можно прочитать в книгах:

  • Иванов Н. Н. — Программирование в Linux. Самоучитель. — 2-е издание;
  • Нейл Метьэ, Ричард Стоунс — Основы программирования в Linux: Пер. с англ. — 4-е издание;
  • Колисниченко Д. Н. — Разработка Linux-приложений.

Exe — Компиляция C++ кода в bin

Самая актуальная документация по Visual Studio 2020: Документация по Visual Studio 2020.

В состав Visual C++ включен компилятор языка C++ для командной строки, позволяющий создавать все, от простых консольных приложений, до универсальных приложений Windows, приложений Магазина Windows и компонентов .NET.

В этом пошаговом руководстве приводятся инструкции по созданию простой консольной программы на языке Visual C++ в текстовом редакторе с последующей компиляцией из командной строки.

В интегрированной среде разработки Visual Studio также можно компилировать программы Visual C++. Для получения дополнительной информации см. Пошаговое руководство. Работа с проектами и решениями (C++).

В этом пошаговом руководстве вместо примера программы, приведенного далее, можно использовать собственную программу на Visual C++. Кроме того, можно использовать образец кода на языке Visual C++ из другого раздела справки.

Для выполнения этого пошагового руководства у вас должна быть версия Visual Studio, включающая компоненты Visual C++. Для работы рекомендуется владеть основами языка C++. Эти инструкции предполагают, что вы используете Windows 10 и Visual Studio 2015. Для других сред и версий инструкции не будут сильно отличаться.

Создание файла исходного кода на языке Visual C++ и его компиляция из командной строки

Сначала откройте командную строку разработчика. Для запуска компилятора Visual C++ требуется специальная среда командной строки, поэтому вы не можете использовать обычную командную строку в этом пошаговом руководстве.

В меню Пуск Windows откройте раздел Все приложения. Прокрутите список вниз, чтобы найти и открыть папку Visual Studio для вашей версии Visual Studio, а затем щелкните ярлык Командная строка разработчика.

Создайте новый каталог для хранения программы. В окне Командная строка разработчика введите команду cd \ , чтобы перейти в корень диска. Введите команду md examples , чтобы создать каталог для примера кода. Затем введите команду cd examples , чтобы сделать его текущим рабочим каталогом. Здесь будет храниться ваша первая программа.

В командной строке введите notepad hello.cpp.

Когда появится запрос на создание файла, нажмите кнопку Да. Откроется пустое окно Блокнота, в котором можно ввести код.

В Блокноте введите следующие строки:

Это очень простая программа, которая выведет одну строку текста на экран, а затем завершит работу. Для сведения числа ошибок к минимуму скопируйте этот код и вставьте его в Блокнот.

Сохраните файл. В Блокноте, в меню Файл выберите Сохранить.

Вы создали файл исходного кода Visual C++.

В командной строке введите cl /EHsc hello.cpp , чтобы скомпилировать свою программу.

Компилятор cl.exe создаст OBJ-файл, содержащий скомпилированный код, а затем запустит компоновщик для создания исполняемой программы с именем hello.exe. Это имя отображается в строках информации, выводимой компилятором. Выходные данные компилятора должны выглядеть следующим образом:

При наличии ошибок проверьте код в Блокноте, чтобы убедиться, что он совпадает с примером. Снова запустите команду компилятора после сохранения изменений. Если не удалось найти команду cl, убедитесь, что вы используете окно командной строки разработчика, а не обычной командной строки. Возможно, при установке Visual Studio потребуется установить компонент Visual C++, если он не установлен.

Чтобы запустить программу hello.exe, в командной строке введите hello .

Программа выводит следующий текст и закрывается:

Поздравляем, вы создали и скомпилировали программу с помощью программ командной строки.

Подробности об открытии окна командной строки разработчика для работы с программами командной строки см. в статье Установка переменных пути и среды при построении из командной строки.

В зависимости от операционной системы и конфигурации компьютера для успешной компиляции кода из этого пошагового руководства могут потребоваться учетные данные администратора. Чтобы запустить окно командной строки разработчика от имени администратора, щелкните правой кнопкой мыши элемент Командная строка разработчика и выберите команду Запуск от имени администратора.

Параметр командной строки /EHsc указывает компилятору на необходимость обработки исключений C++. Дополнительные сведения см. в разделе Параметр /EH (модель обработки исключений).

Компиляция исходников (cpp, cs) компилятором Visual Studio без запуска IDE в Windows

Компиляция cpp-файлов

Основные параметры, которые следует однократно настроить в вышеприведённом сценарии:
1) в разделе «Пути к Visual Studio» необходимо задать пути к файлам различных версий Visual Studio (если у вас их установлено несколько):

  • sVSPath — путь к основному каталогу Visual Studio т.е. к корневому каталогу, в котором содержатся все прочие подкаталоги для данной версии VS.
  • gavIncPathMy — возможно для VS 11.0 потребуется задать свои пути к подключаемым заголовочным файлам.

2) в разделе «Пути к Boost» можно задать BOOST_ROOT — путь к коревому каталогу библиотеки Boost (если она у вас установлена).
3) в разделе «Настройка путей к подключаемым файлам» при необходимости можно задать пути к заголовочным файлам Qt, WinDDK.
4) в разделе «Настройка путей к библиотечным (.lib) файлам» задаются пути к файлам библиотек (в частности для WinDDK).

Реже может возникнуть необходимость настроить следующие параметры под конкретный проект:
iCompVer — версия используемого компилятора (6 — для VC6, 8 — VC8 (2005), 9 — VC9, 10 — VC10 (2010), 11 — VC11 (2012).
gavLibFilesQtShared — имена .lib-файлов для динамически подключаемой библиотеки Qt;
gavLibFilesQtStatic — имена .lib-файлов для статически линкуемой библиотеки Qt.
gavLibFilesCrt — имена .lib-файлов для стандартных динамических библиотек, используемых в Windows.
iModeQt — режим линковки библиотеки Qt.
gavCompMode — флаги режима компиляции (однопоточные, многопоточные и т.п.).
gavOptimize — флаги оптимизации кода компилятором.

Чаще всего приходится менять параметры:
gavSrc — имена файлов с исходным кодом, разделённые пробелом (если их несколько).
bLibQt — флаг (0/1) необходимости использовать библиотеку Qt при сборке приложения.
bLibCrt — флаг (0/1) необходимости использовать стандартные CRT-библиотеки Windows при сборке приложения.
bLibBoost — флаг (0/1) необходимости использовать библиотеку Boost при сборке приложения.
gavSubsystem — подсистема создаваемого приложения: CONSOLE — консольное, WINDOWS — с графическим интерфейсом.

Как скомпилировать программу C, используя компилятор GNU Compiler (GCC)

В создании этой статьи участвовала наша опытная команда редакторов и исследователей, которые проверили ее на точность и полноту.

Команда контент-менеджеров wikiHow тщательно следит за работой редакторов, чтобы гарантировать соответствие каждой статьи нашим высоким стандартам качества.

В этой статье рассказывается, как скомпилировать программу из исходного кода на языке C с помощью компилятора GNU Compiler (GCC) для Linux или Minimalist Gnu (MinGW) для Windows.

Как выполнить скомпилированный код C++ за пределами папки MinGW bin?

Привет, Я компилирую C++ код с помощью MinGW G++ компилятора. Я также добавил PATH к адресу C:\MinGW\bin; как переменная среды.

Я могу получить доступ к G++ из командной строки и скомпилировать код, но я могу выполнить этот файл только в том случае, если файл.exe находится в папке bin. (Я предполагаю, что это требует.dll файлов).

Если файл.cpp скомпилирован вне папки bin, он дает мне ошибку:

Есть ли способ, который я могу скомпилировать, а также выполнить код непосредственно из командной строки, если он находится в других папках?

Это программа, с которой я работал:

Если я скомпилирую базовый код, например «Hello World», он работает за пределами папки bin. Но для немного большего кода, подобного выше, не выполняется.

Цукерберг рекомендует:  Сайт - HELP. Сайт.
Понравилась статья? Поделиться с друзьями:
Все языки программирования для начинающих
Примечание