Сборка проекта на C++ с GCC 5.4.0
Posted: Fri Dec 21, 2018 11:06 pm
Всем доброго времени суток!
Использую Toolchain от Serge последней версии (http://ftp.kolibrios.org/users/Serge/new/Toolchain/), ипри попытке собрать пример hello из "sdk/samples" с поддержкой C++ столкнулся с проблемой отсутствия библиотеки libgcc_eh.a. Если не же включать эту библиотеку в Makefile, то получаю ошибку "/static.lds:12: undefined symbol `__crt_start' referenced in expression". Что можно сделать в этой ситуации?
При попытке сборки с GCC 4.8.5 получаю ту же самую ошибку с отсутствием __crt_start. Makefile выглядит так (взят из примера "hello"):
Использую Toolchain от Serge последней версии (http://ftp.kolibrios.org/users/Serge/new/Toolchain/), ипри попытке собрать пример hello из "sdk/samples" с поддержкой C++ столкнулся с проблемой отсутствия библиотеки libgcc_eh.a. Если не же включать эту библиотеку в Makefile, то получаю ошибку "/static.lds:12: undefined symbol `__crt_start' referenced in expression". Что можно сделать в этой ситуации?
При попытке сборки с GCC 4.8.5 получаю ту же самую ошибку с отсутствием __crt_start. Makefile выглядит так (взят из примера "hello"):
Spoiler:
Code: Select all
CC = kos32-gcc
LD = kos32-ld
SDK_DIR:= $(abspath ../..)
LDFLAGS = -static -T$(SDK_DIR)/sources/newlib/static.lds
CFLAGS = -c -fno-ident -O2 -fomit-frame-pointer -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32
INCLUDES= -I $(SDK_DIR)/sources/newlib/libc/include
LIBPATH:= -L $(SDK_DIR)/lib
SOURCES = hello.c \
$(NULL)
OBJECTS = $(patsubst %.c, %.o, $(SOURCES))
default: hello
hello: $(OBJECTS) Makefile.static
$(LD) $(LDFLAGS) $(LIBPATH) -o hello $(OBJECTS) -lsupc++ -lgcc_eh -lc.dll -lgcc
objcopy hello -O binary
%.o : %.c Makefile.static $(SOURCES)
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $<