Skip to content

Fails to build: ‘gl::BufferAccessMask’ has not been declared #411

Description

@yodaxtah

I'm trying to build globjects, but it fails at symbol name BufferAccessMask which I can't find myself.

This is how I built glbinding, as it is a dependency for globjects.

git checkout v3.5.0
mkdir -p build install
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PWD/install
cmake --build build --config Release
cmake --install build

This is how I built globjects.

git checkout v1.0.0
mkdir -p build install
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$PWD/../glbinding/install
cmake --build build --config Release
cmake --install build # error 2

Error 2 looks like this: (I'll address error 1 soon.)

[  1%] Building CXX object source/globjects/CMakeFiles/globjects.dir/source/AbstractUniform.cpp.o
In file included from /path/to/Projects/globjects/source/globjects/include/globjects/globjects.h:15,
                 from /path/to/Projects/globjects/source/globjects/source/AbstractUniform.cpp:7:
/path/to/globjects/source/globjects/include/globjects/Buffer.h:178:69: error: ‘gl::BufferAccessMask’ has not been declared
  178 |     void * mapRange(gl::GLintptr offset, gl::GLsizeiptr length, gl::BufferAccessMask access);
      |                                                                     ^~~~~~~~~~~~~~~~
gmake[2]: *** [source/globjects/CMakeFiles/globjects.dir/build.make:93: source/globjects/CMakeFiles/globjects.dir/source/AbstractUniform.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:290: source/globjects/CMakeFiles/globjects.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2

I searched for its definition in both projects:

  • rg "[^a-zA-Z]BufferAccessMask" gave no matches in glbinding
  • rg "[^a-zA-Z]BufferAccessMask" gave 12 matches in gobjects, all of which were parameters.`

In the build description, it did not specify which version of glbinding I needed. I suspect/hope the issue is that I'm using the wrong version? How is nobody else running into this though...?

With regards to the first error, when I'd run cmake .. and all other commands exactly as suggested by the build instructions, I'd hit:

Could not find a package configuration file provided by "glbinding" with any of the following names:
    glbindingConfig.cmake
    glbinding-config.cmake

Therefore, I became a bit creative with the build instructions, though I have little experience with CMake.

I am on Debian 13.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions