@ -36,8 +36,9 @@ This base image is designed to create statically-linked C++ executables using:
|
||||
5. **cURL** (8.7.1) - HTTP client with OpenSSL support
|
||||
6. **MariaDB Connector/C** (3.4.5) - MySQL/MariaDB client
|
||||
7. **SQLite3** (3.45.0) - Embedded database
|
||||
8. **MySQL client** (8.0.36) - MySQL client library
|
||||
9. **Drogon** (latest from git) - C++ web framework
|
||||
8. **fmt** (10.2.1) - Modern formatting library
|
||||
9. **spdlog** (1.13.0) - Fast C++ logging library
|
||||
10. **Drogon** (latest from git) - C++ web framework
|
||||
|
||||
### Build Characteristics
|
||||
- All libraries installed in `/usr/local/` with specific prefixes
|
||||
|
@ -152,6 +152,30 @@ RUN wget https://www.sqlite.org/2024/sqlite-autoconf-3450000.tar.gz && \
|
||||
|
||||
# Skip MySQL build - use MariaDB Connector/C for MySQL support instead
|
||||
|
||||
# Build fmt library statically
|
||||
ARG FMT_VERSION=10.2.1
|
||||
WORKDIR /tmp
|
||||
RUN curl -LO https://github.com/fmtlib/fmt/archive/refs/tags/${FMT_VERSION}.tar.gz && \
|
||||
tar xzf ${FMT_VERSION}.tar.gz && \
|
||||
cd fmt-${FMT_VERSION} && \
|
||||
mkdir build && cd build && \
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/usr/local && \
|
||||
make -j$(nproc) && \
|
||||
make install && \
|
||||
cd / && rm -rf /tmp/fmt-${FMT_VERSION} /tmp/${FMT_VERSION}.tar.gz
|
||||
|
||||
# Build spdlog library statically
|
||||
ARG SPDLOG_VERSION=1.13.0
|
||||
WORKDIR /tmp
|
||||
RUN curl -LO https://github.com/gabime/spdlog/archive/refs/tags/v${SPDLOG_VERSION}.tar.gz && \
|
||||
tar xzf v${SPDLOG_VERSION}.tar.gz && \
|
||||
cd spdlog-${SPDLOG_VERSION} && \
|
||||
mkdir build && cd build && \
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/usr/local -DSPDLOG_FMT_EXTERNAL=ON && \
|
||||
make -j$(nproc) && \
|
||||
make install && \
|
||||
cd / && rm -rf /tmp/spdlog-${SPDLOG_VERSION} /tmp/v${SPDLOG_VERSION}.tar.gz
|
||||
|
||||
#ARG DROGON_VERSION=1.9.5
|
||||
WORKDIR /tmp
|
||||
RUN git clone --recurse-submodules https://github.com/drogonframework/drogon.git /tmp/drogon && \
|
||||
|
Reference in New Issue
Block a user