在Alpine docker图像中未找到stdint.h
我收到一个错误:从alpine:edge构建docker映像时,没有搜索stdint.h的包含路径错误消息,这会导致其他错误,如未知类型名“uint32_t”和编译程序失败 据我所知,Stdit.h是C++标准库的一部分,应该存在,除非在AlpIPE: EDGE中有什么东西被打破了,我想不会。 我的docker图像如下所示:在Alpine docker图像中未找到stdint.h,docker,alpine,Docker,Alpine,我收到一个错误:从alpine:edge构建docker映像时,没有搜索stdint.h的包含路径错误消息,这会导致其他错误,如未知类型名“uint32_t”和编译程序失败 据我所知,Stdit.h是C++标准库的一部分,应该存在,除非在AlpIPE: EDGE中有什么东西被打破了,我想不会。 我的docker图像如下所示: FROM alpine:edge RUN apk update && apk add \ git \ make \
FROM alpine:edge
RUN apk update && apk add \
git \
make \
gcc \
python3 \
ldc \
&& git clone --recursive https://github.com/lomereiter/sambamba.git \
&& cd sambamba \
&& make \
&& mv sambamba /usr/local/bin/ \
&& cd ../.. \
&& rm -r sambamba
WORKDIR /wd
ENTRYPOINT ["/usr/local/bin/sambamba"]
请注意,图像alpine:edge是必需的,因为ldc包仅在其上可用。如何解决这个问题?为什么找不到stdint.h?要成功编译Sambamba,您需要一些额外的包: C++编译器的G++ 兹利布 zlib头文件的zlib dev 总的来说,这个修改过的Dockerfile应该可以做到:
FROM alpine:edge
RUN apk update && apk add \
git \
make \
gcc \
g++ \
zlib \
zlib-dev \
python3 \
ldc \
&& git clone --recursive https://github.com/lomereiter/sambamba.git \
&& cd sambamba \
&& make \
&& mv sambamba /usr/local/bin/ \
&& cd ../.. \
&& rm -r sambamba
WORKDIR /wd
ENTRYPOINT ["/usr/local/bin/sambamba"]
要成功编译Sambamba,您需要一些附加包: C++编译器的G++ 兹利布 zlib头文件的zlib dev 总的来说,这个修改过的Dockerfile应该可以做到:
FROM alpine:edge
RUN apk update && apk add \
git \
make \
gcc \
g++ \
zlib \
zlib-dev \
python3 \
ldc \
&& git clone --recursive https://github.com/lomereiter/sambamba.git \
&& cd sambamba \
&& make \
&& mv sambamba /usr/local/bin/ \
&& cd ../.. \
&& rm -r sambamba
WORKDIR /wd
ENTRYPOINT ["/usr/local/bin/sambamba"]
疯狂猜测:你需要安装G++包来获得C++编译器和标准库吗?很好的猜测,它确实解决了STNDIT编译仍然失败的问题,但是现在是一个不同的错误。我很惊讶GCC没有提供这个信息:Fuy猜测:你需要安装G++包来获得C++编译器和标准库吗?很好的猜测,它确实解决了STNDIT编译仍然失败的问题,但是现在是一个不同的错误。我很惊讶gcc没有提供这一信息。