Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG][UNIX] #453

Open
bratne opened this issue May 24, 2023 · 0 comments
Open

[BUG][UNIX] #453

bratne opened this issue May 24, 2023 · 0 comments
Labels
bug? reported as bug; triage pending

Comments

@bratne
Copy link

bratne commented May 24, 2023

Summary

Static compilation fails on the boost library.
./configure COMPILED_BY="Docker" --prefix=/installdir --enable-static

POV-Ray Version

  • Incarnation: POV-Ray for Unix
  • Affected build version: v3.7.0.10 (commit: cd074e4, branch: latest-stable)
  • Known working build version: ??

Runtime Environment

  • Operating system: alpine linux, docker, latest
  • Hardware architecture: Docker
  • CPU model: N/A

Steps to Reproduce

Store the following as a Dockerfile

FROM alpine:latest as BUILD
RUN apk add build-base git autoconf automake boost-dev libpng-dev tiff-dev openexr-dev
RUN git clone -b latest-stable --single-branch --depth 1 https://github.com/POV-Ray/povray.git
WORKDIR /povray
RUN cd unix &&
./prebuild.sh
RUN ./configure COMPILED_BY="Docker" --prefix=/installdir --enable-static`

Command Line

Docker build .

Expected Behavior

Make-command should successfully compile a binary

Actual Behavior

Compilation fails

Output

#0 0.440
#0 0.440 ===============================================================================
#0 0.440 Configure POV-Ray version 3.7.0.10
#0 0.440 ===============================================================================
#0 0.440
#0 0.440 This is an unofficial version compiled by:
#0 0.440 Docker
#0 0.440 The POV-Ray Team(tm) is not responsible for supporting this version.
#0 0.440
#0 0.440 Environment
#0 0.440 -----------
#0 0.443 checking build system type... x86_64-pc-linux-musl
#0 0.473 checking host system type... x86_64-pc-linux-musl
#0 0.473 checking for a BSD-compatible install... /usr/bin/install -c
#0 0.622 checking whether build environment is sane... yes
#0 0.626 /bin/sh: can't open '"/povray/unix/config"/missing': No such file or directory
#0 0.626 configure: WARNING: 'missing' script is too old or missing
#0 0.626 checking for a race-free mkdir -p... ./unix/config/install-sh -c -d
#0 0.630 checking for gawk... no
#0 0.631 checking for mawk... no
#0 0.631 checking for nawk... no
#0 0.631 checking for awk... awk
#0 0.631 checking whether make sets $(MAKE)... yes
#0 0.636 checking whether make supports nested variables... yes
#0 0.640 checking whether to enable maintainer-specific portions of Makefiles... no
#0 0.641 checking whether $C_INCLUDE_PATH contains the "." path... no
#0 0.643 checking whether $CPLUS_INCLUDE_PATH contains the "." path... no
#0 0.643
#0 0.643 Programs
#0 0.643 --------
#0 0.643 checking for gcc... gcc
#0 0.659 checking whether the C compiler works... yes
#0 0.681 checking for C compiler default output file name... a.out
#0 0.681 checking for suffix of executables...
#0 0.703 checking whether we are cross compiling... no
#0 0.727 checking for suffix of object files... o
#0 0.743 checking whether the compiler supports GNU C... yes
#0 0.758 checking whether gcc accepts -g... yes
#0 0.774 checking for gcc option to enable C11 features... none needed
#0 0.801 checking whether gcc understands -c and -o together... yes
#0 0.830 checking whether make supports the include directive... yes (GNU style)
#0 0.835 checking dependency style of gcc... gcc3
#0 0.855 checking how to run the C preprocessor... gcc -E
#0 0.891 checking for stdio.h... yes
#0 0.903 checking for stdlib.h... yes
#0 0.917 checking for string.h... yes
#0 0.930 checking for inttypes.h... yes
#0 0.944 checking for stdint.h... yes
#0 0.959 checking for strings.h... yes
#0 0.973 checking for sys/stat.h... yes
#0 0.989 checking for sys/types.h... yes
#0 1.004 checking for unistd.h... yes
#0 1.021 checking for stdlib.h... (cached) yes
#0 1.021 checking for g++... g++
#0 1.034 checking whether the compiler supports GNU C++... yes
#0 1.049 checking whether g++ accepts -g... yes
#0 1.066 checking for g++ option to enable C++11 features... none needed
#0 1.126 checking dependency style of g++... gcc3
#0 1.145 checking whether the g++ compiler works... yes
#0 1.171 checking how to run the C++ preprocessor... g++ -E
#0 1.208 checking for C++ compiler vendor... gnu
#0 1.262 checking for grep that handles long lines and -e... /bin/grep
#0 1.293 checking for egrep... /bin/grep -E
#0 1.294 checking for g++ version... 12.2.1
#0 1.299 checking for ranlib... ranlib
#0 1.300 checking for stat format option... -c
#0 1.305
#0 1.305 Libraries
#0 1.305 ---------
#0 1.305 checking whether to link with cygwin DLL... no
#0 1.305 checking whether to enable static linking... yes
#0 1.305 checking for linker static flag... -static
#0 1.305 checking for working '-static' flag... yes
#0 1.356 checking for the pthreads library -lpthreads... no
#0 1.383 checking whether pthreads work without any flags... yes
#0 1.412 checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
#0 1.440 checking if more special flags are required for pthreads... no
#0 1.443 checking for boostlib >= 1.37... yes
#0 1.462 checking whether the Boost::Thread library is available... yes
#0 3.084 checking for exit in -lboost_thread... no
#0 3.109 checking for exit in -lboost_thread... (cached) no
#0 3.110 configure: error: Could not link against boost_thread !

Suggested Solution

Checking if the library exists should be done differently for boost, as static linking of a .hpp is not dependent on a .so or .a-file.

@bratne bratne added the bug? reported as bug; triage pending label May 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug? reported as bug; triage pending
Projects
None yet
Development

No branches or pull requests

1 participant