execute_process(COMMAND "x86_64-none-elf-g++" "-print-file-name=crtbegin.o" OUTPUT_VARIABLE CRT_BEGIN ERROR_QUIET ) string(STRIP "${CRT_BEGIN}" CRT_BEGIN) mark_as_advanced(CRT_BEGIN) string(REGEX REPLACE "/crtbegin.o" "" CMAKE_SYSROOT "${CRT_BEGIN}") mark_as_advanced(CMAKE_SYSROOT) set(CMAKE_CXX_FLAGS_INIT "-m64 -mno-red-zone -mcmodel=large") set(CMAKE_EXE_LINKER_FLAGS_INIT "-nostartfiles") set(CMAKE_CXX_LINK_EXECUTABLE " \ \ \ \ ${CMAKE_SYSROOT}/crtbegin.o \ \ -o \ \ ${CMAKE_SYSROOT}/crtend.o" )