eimgfs icon indicating copy to clipboard operation
eimgfs copied to clipboard

Fix broken Dockerfile

Open brandonros opened this issue 1 year ago • 1 comments

brandonros avatar Aug 05 '24 00:08 brandonros

Nope, still broken

cmake -B build . -DCMAKE_BUILD_TYPE=Release    
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at cmake_find/boilerplate.cmake:50 (message):
  

  Run cmake with an explicit -B buildpath
Call Stack (most recent call first):
  CMakeLists.txt:6 (include)


-- Configuring incomplete, errors occurred!
See also "/app/CMakeFiles/CMakeOutput.log".
Makefile:7: recipe for target 'cmake' failed
make: *** [cmake] Error 1
The command '/bin/sh -c make' returned a non-zero code: 2
user@xhpi:~/eimgfs$ 

brandonros avatar Aug 05 '24 00:08 brandonros

the problem seems to be that docker uses a really old version of cmake : 3.10. apparently the -B option is missing, and also the FetchContent module.

I don't know enough about docker why this happens.

nlitsme avatar Aug 06 '24 09:08 nlitsme

ah, maybe it is because it says 'ubuntu:bionic' in the dockerfile, which is an old version of ubuntu

nlitsme avatar Aug 06 '24 09:08 nlitsme

other things missing in the dockerfile:

  • git
  • libboost-date-time-dev
  • possibly the amd64 variants: libssl-dev:amd64 and libstdc++6:amd64

then it still has problems - git has problems verifying the https certificate of github.

nlitsme avatar Aug 06 '24 09:08 nlitsme

and I also noticed that you need to 'clean' before creating the docker container, otherwise your local build directory will pollute the one in the docker container. maybe you should not COPY, but git clone eimgfs from github directly

nlitsme avatar Aug 06 '24 09:08 nlitsme

my suggestion: delete the Dockerfile (it is confusing for somebody who is walking into this repo thinking it is working, it is 100% not working)

my 2nd suggestion:

I like how you have invested the time to try to make this compile on so many different operating systems. However...

In order to bootstrap Win32 CMake files... you need make... make is very uncommon on Win32 MSVC VisualStudio setup (nmake), you need MinGW environment extra. Then, when you do that, it collides with like gcc and all sorts of things.

I had 0 success on trying to get Win32 to build and I put a ton of time into it. I appreciate you maintaining this and making it open source, just wanted to give the feedback. MinGW make to bootstrap MSVC Cmake to maybe call NMake is pretty confuisng

Also, if you are interested https://github.com/KodaSec/wince-decompr/issues/4

brandonros avatar Aug 06 '24 19:08 brandonros