在Alpine docker图像中未找到stdint.h

在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 \

我收到一个错误:从alpine:edge构建docker映像时,没有搜索stdint.h的包含路径错误消息,这会导致其他错误,如未知类型名“uint32_t”和编译程序失败

据我所知,Stdit.h是C++标准库的一部分,应该存在,除非在AlpIPE: EDGE中有什么东西被打破了,我想不会。 我的docker图像如下所示:

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没有提供这一信息。