nlitsme / eimgfs

Tool for editting Windows CE/Mobile firmware images.
MIT License
66 stars 11 forks source link

Fix broken Dockerfile #11

Closed brandonros closed 1 month ago

brandonros commented 1 month ago

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$ 
nlitsme commented 1 month ago

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 commented 1 month ago

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

nlitsme commented 1 month ago

other things missing in the dockerfile:

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

nlitsme commented 1 month ago

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

brandonros commented 1 month ago

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