1. Укажем в PATH путь к компилятору BC++ у меня он находится C:\BCC102\ и C:\BCC102\bin\:
2. Создадим папку на диске C cmaketest
3. Создадим файл hello.c:
#include <stdio.h> int main(void) { printf("Hello"); return 0; }
4. Создадим файл cmakelists.txt в папке cmaketest:
cmake_minimum_required(VERSION 3.21 FATAL_ERROR) project(Demo) file(GLOB Demo_SRC "*.c" ) add_executable(Demo ${Demo_SRC})
5. Создадим файл build.bat:
@echo off "c:\cmake\bin\cmake" -G"Borland Makefiles" -DCMAKE_MAKE_PROGRAM="make.exe" -DCMAKE_CXX_COMPILER="bcc32c.exe" -DCMAKE_C_COMPILER="bcc32c.exe" -DCMAKE_VERBOSE_MAKEFILE=1 .. make
6. Запуститм build.bat
Результат:
C:\cmaketest\build>build.bat -- The C compiler identification is Embarcadero 7.30.36015 -- The CXX compiler identification is Embarcadero 7.30.36015 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: C:/BCC102/bin/bcc32c.exe - skipped -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: C:/BCC102/bin/bcc32c.exe - skipped -- Configuring done -- Generating done -- Build files have been written to: C:/cmaketest/build MAKE Version 5.41 Copyright (c) 1987, 2014 Embarcadero Technologies, Inc. C:\cmake\bin\cmake.exe -SC:\cmaketest -BC:\cmaketest\build --check-build-system CMakeFiles\Makefile.cmake 0 C:\cmake\bin\cmake.exe -E cmake_progress_start C:\cmaketest\build\CMakeFiles C:\cmaketest\build\\CMakeFiles\progress.marks make -f CMakeFiles\Makefile2 -l -o all MAKE Version 5.41 Copyright (c) 1987, 2014 Embarcadero Technologies, Inc. make -f CMakeFiles\Demo.dir\build.make -l -o CMakeFiles\Demo.dir\depend MAKE Version 5.41 Copyright (c) 1987, 2014 Embarcadero Technologies, Inc. C:\cmake\bin\cmake.exe -E cmake_depends "Borland Makefiles" C:\cmaketest C:\cmaketest C:\cmaketest\build C:\cmaketest\build C:\cmaketest\build\CMakeFiles\Demo.dir\DependInfo.cmake --color= Scanning dependencies of target Demo make -f CMakeFiles\Demo.dir\build.make -l -o CMakeFiles\Demo.dir\build MAKE Version 5.41 Copyright (c) 1987, 2014 Embarcadero Technologies, Inc. [ 50%] Building C object CMakeFiles/Demo.dir/hello.c.obj C:\BCC102\bin\bcc32c.exe -tR -DWIN32 -tM -Od -v -oCMakeFiles\Demo.dir\hello.c.obj -c C:\cmaketest\hello.c Embarcadero C++ 7.30 for Win32 Copyright (c) 2012-2017 Embarcadero Technologies, Inc. C:\cmaketest\hello.c: [100%] Linking C executable Demo.exe C:\BCC102\bin\bcc32c.exe -tR -eDemo.exe -tM -lS:1048576 -lSc:4098 -lH:1048576 -lHc:8192 -v -tC -tM -Od -v @MAKE0000.@@@ Embarcadero C++ 7.30 for Win32 Copyright (c) 2012-2017 Embarcadero Technologies, Inc. Turbo Incremental Link 6.90 Copyright (c) 1997-2017 Embarcadero Technologies, Inc. [100%] Built target Demo C:\cmake\bin\cmake.exe -E cmake_progress_start C:\cmaketest\build\CMakeFiles 0
Ура! У нас только-что создался exe-файл!