tangrams / tangram-es

2D and 3D map renderer using OpenGL ES
MIT License
823 stars 239 forks source link

Unable to build release 0.17.1 on Gentoo #2322

Open Carnildo opened 2 years ago

Carnildo commented 2 years ago

TO REPRODUCE THE ISSUE, FOLLOW THESE STEPS:

I'm following the instructions at https://github.com/tangrams/tangram-es/tree/main/platforms/linux adapted for Gentoo's package naming.

RESULT:

After running git submodule update --init I get

fatal: not a git repository (or any parent up to mount point /) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).

After ignoring that error and attempting to continue with make linux, I get

which: no xcpretty in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/13/bin:/usr/lib/llvm/11/bin:/usr/lib64/opencascade/bin:/home/mark/bin:/home/mark/.local/bin) which: no jazzy in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/lib/llvm/13/bin:/usr/lib/llvm/11/bin:/usr/lib64/opencascade/bin:/home/mark/bin:/home/mark/.local/bin) cmake -H. -Bbuild/linux -DCMAKE_BUILD_TYPE=Release -DTANGRAM_PLATFORM=linux -DCMAKE_EXPORT_COMPILE_COMMANDS=TRUE -- The C compiler identification is GNU 11.2.1 -- The CXX compiler identification is GNU 11.2.1 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Use vcpkg: OFF -- Build type configuration: Release CMake Error at CMakeLists.txt:29 (message): Missing submodules - Please run:

'git submodule update --init'

-- Configuring incomplete, errors occurred! See also "/home/mark/Documents/projects/tangram-es-0.17.1/build/linux/CMakeFiles/CMakeOutput.log". make: *** [Makefile:260: cmake-linux] Error 1

EXPECTED RESULT:

The library and demo will successfully compile

ENVIRONMENT:

Gentoo Linux on x86-64, attempting to compile release 0.17.1

matteblair commented 2 years ago

It looks like you haven't successfully set up the git submodules, which is why the build produced this error:

CMake Error at CMakeLists.txt:29 (message):
Missing submodules - Please run:

'git submodule update --init'

Try running git submodule update --init from the root directory of your local tangram-es repo. You won't be able to build the project until you set up the submodules correctly.

Carnildo commented 2 years ago

So Tangram-ES only supports building from a git repository, not from the source tarball? If so, the documentation should mention this.

matteblair commented 2 years ago

This is more of a problem with GitHub, not Tangram ES. The GitHub source archive does not include submodule sources, but if you also download archives of the repo's submodules and move them into their respective locations in the project then it will still build correctly. However it is significantly easier to use git for this so that's what I advise users to do!