Я пытаюсь создать последнюю версию glibc (2.22). Я не модифицировал источники glibc. На моей x86_64 Ubuntu 14.04.1 машине я использую следующий экстракт Makefile построить:Ошибка сборки библиотеки GNU C (glibc) (libc-modules.h не найден)
HOST ?= x86_64-linux-gnu
TARGET ?= x86_64-linux-gnu
CROSS_OUT = $(shell pwd)/$(TARGET)
CC ?= gcc
CXX ?= g++
LD ?= ld
[...]
CFLAGS ?= "-I$(CROSS_OUT)/include -L$(CROSS_OUT)/lib"
CXXFLAGS ?= "-I$(CROSS_OUT)/include -L$(CROSS_OUT)/lib"
CPPFLAGS ?= "-I$(CROSS_OUT)/include -L$(CROSS_OUT)/lib"
LDFLAGS ?= "-I$(CROSS_OUT)/include -L$(CROSS_OUT)/lib"
[...]
GLIBC_PATH=$(shell pwd)/glibc
GLIBC_BUILD_PATH=$(shell pwd)/glibc-build
glibc: glibc-clean
mkdir -p $(GLIBC_BUILD_PATH)
cd $(GLIBC_BUILD_PATH) && \
CC=$(CC) \
CXX=$(CXX) \
LD=$(LD) \
CFLAGS=$(CFLAGS) \
CXXFLAGS=$(CXXFLAGS) \
CPPFLAGS=$(CPPFLAGS) \
LDFLAGS=$(LDFLAGS) \
$(GLIBC_PATH)/configure \
--host=$(TARGET) \
--build=$(HOST) \
--prefix=$(CROSS_OUT) \
--disable-shared \
--enable-add-ons \
--enable-static-nss && \
make && \
make install
glibc-clean:
rm -r -f $(GLIBC_BUILD_PATH)
делают остановки почти немедленно со следующей ошибкой:
In file included from <command-line>:0:0:
../include/stdc-predef.h:64:1: fatal error: /home/leon/reaper/glibc-build/libc-modules.h: No such file or directory
#endif
^
compilation terminated.
К сожалению, файл определенно Безразлично не существует.
ли вы решить эту проблему (у меня есть один и тот же один)? -fno-stack-protector -U_FORTIFY_SOURCE в CFLAGS не помогает. – Dzenly