I am using Embarcadero C++Builder v10.4 with a C++ VCL application.
I need to read YAML, and the most referenced API is "yaml-cpp".
What I am asking for is help or guidance on what I have to do to be able to use yaml-cpp.
So far, I have been able to solve my tasks by integrating headers and also DLLs. For the integration of the API, I feel there is a lack of knowledge that that I need to fill.
How do I create the Makefiles correctly for Embarcadero? What should I get after make, and how do I tie it in?
What I tried so far:
I tried to build it like it is described on GitHub and create some Borland Makefiles.
I believe I have to make the build, but I get an error after 2%. I read Using CMake with C++ Builder and created the makefiles with the example in the end of "Building using CMake". But I get an error after 94% when trying to make.
I have the feeling that I am doing something generally wrong.
I am very grateful for any help.
Last Error CMake with Rad Studio console:
C:\git\Temp\yaml-cpp-master\build>cmake -DCMAKE_C_COMPILER=bcc32x.exe -DCMAKE_CXX_COMPILER=bcc32x.exe -DCMAKE_BUILD_TYPE_INIT=Release -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -G "Borland Makefiles" ..
-- The CXX compiler identification is Embarcadero 7.50.37590
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Embarcadero/Studio/21.0/bin/bcc32x.exe - skipped
-- Configuring done (2.0s)
-- Generating done (0.3s)
CMake Warning:
Manually-specified variables were not used by the project:
CMAKE_C_COMPILER
-- Build files have been written to: C:/git/Temp/yaml-cpp-master/build
C:\git\Temp\yaml-cpp-master\build>make
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
"C:\Program Files\CMake\bin\cmake.exe" -P C:\git\Temp\yaml-cpp-master\build\CMakeFiles\VerifyGlobs.cmake
"C:\Program Files\CMake\bin\cmake.exe" -SC:\git\Temp\yaml-cpp-master -BC:\git\Temp\yaml-cpp-master\build --check-build-system CMakeFiles\Makefile.cmake 0
"C:\Program Files\CMake\bin\cmake.exe" -E cmake_progress_start C:\git\Temp\yaml-cpp-master\build\CMakeFiles C:\git\Temp\yaml-cpp-master\build\\CMakeFiles\progress.marks
make -f CMakeFiles\Makefile2 -l -o all
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
make -f CMakeFiles\yaml-cpp.dir\build.make -l -o CMakeFiles\yaml-cpp.dir\depend
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
"C:\Program Files\CMake\bin\cmake.exe" -E cmake_depends "Borland Makefiles" C:\git\Temp\yaml-cpp-master C:\git\Temp\yaml-cpp-master C:\git\Temp\yaml-cpp-master\build C:\git\Temp\yaml-cpp-master\build C:\git\Temp\yaml-cpp-master\build\CMakeFiles\yaml-cpp.dir\DependInfo.cmake --color=
make -f CMakeFiles\yaml-cpp.dir\build.make -l -o CMakeFiles\yaml-cpp.dir\build
MAKE Version 5.43 Copyright (c) 1987, 2019 Embarcadero Technologies, Inc.
[ 2%] Building CXX object CMakeFiles/yaml-cpp.dir/src/contrib/graphbuilder.cpp.obj
C:\PROGRA~2\EMBARC~1\Studio\21.0\bin\bcc32x.exe -DYAML_CPP_STATIC_DEFINE @CMakeFiles/yaml-cpp.dir/includes_CXX.rsp -Wall -Wextra -Wshadow -Weffc++ -Wno-long-long -pedantic -pedantic-errors -oCMakeFiles\yaml-cpp.dir\src\contrib\graphbuilder.cpp.obj -P -c C:\git\Temp\yaml-cpp-master\src\contrib\graphbuilder.cpp
Embarcadero C++ 7.50 for Win32 Copyright (c) 2012-2021 Embarcadero Technologies, Inc.
....
[ 94%] Linking CXX executable parse.exe
cd C:\git\Temp\yaml-cpp-master\build\util
C:\PROGRA~2\EMBARC~1\Studio\21.0\bin\bcc32x.exe --rsp-quoting=windows -oparse.exe @MAKE0000.@@@
Embarcadero C++ 7.50 for Win32 Copyright (c) 2012-2021 Embarcadero Technologies, Inc.
bcc32x.exe: warning: argument unused during compilation: '-nobuiltininc' [-Wunused-command-line-argument]
Turbo Incremental Link 6.95 Copyright (c) 1997-2021 Embarcadero Technologies, Inc.
Error: Nicht aufl÷sbares externes '__Atomic_fetch_add_4' referenziert von C:\GIT\TEMP\YAML-CPP-MASTER\BUILD\YAML-CPP.LIB|nodebuilder.cpp
Error: Linken kann nicht ausgef³hrt werden
bcc32x.exe: error: linker command failed with exit code 2 (use -Xdriver -v to see invocation)
** error 2 ** deleting util\parse.exe
** error 1 ** deleting util\CMakeFiles\yaml-cpp-parse.dir\all
** error 1 ** deleting all