Build failed on macOS

Author: AlekamerlinCreated May 14, 2026Updated Jul 1, 2026
Labelsunconfirmed bug
LibreSprite version
  • [ *] I am using the latest release or a build from latest commits.
  • [ *] I am not using the Flatpak. (If you are, please raise an issue here.
4b30f8f
Describe the bug
FAILED: [code=1] src/script/CMakeFiles/script-lib.dir/v8/engine.cpp.o 
/usr/bin/c++ -DHAVE_CONFIG_H -DNDEBUG -DSCRIPT_ENGINE_V8=1 -DUSE_SDL2_BACKEND -DV8_COMPRESS_POINTERS -I~/LibreSprite/third_party/qoi -I/opt/homebrew/include -I/opt/homebrew/opt/libarchive/include -I/opt/homebrew/include/pixman-1 -I/opt/homebrew/include/freetype2 -I~/LibreSprite/third_party/simpleini -I/opt/homebrew/include/SDL2 -I~/LibreSprite/src/. -I~/LibreSprite/src/.. -I~/LibreSprite/src/../third_party -I~/LibreSprite/src/../third_party/observable -I~/LibreSprite/build/src/base -I~/LibreSprite/third_party/duktape -I~/LibreSprite/third_party/quickjs -O3 -stdlib=libc++ -Wall -Wno-switch -O2 -O2 -g -DNDEBUG -std=c++20 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -MD -MT src/script/CMakeFiles/script-lib.dir/v8/engine.cpp.o -MF src/script/CMakeFiles/script-lib.dir/v8/engine.cpp.o.d -o src/script/CMakeFiles/script-lib.dir/v8/engine.cpp.o -c ~/LibreSprite/src/script/v8/engine.cpp
~/LibreSprite/src/script/v8/engine.cpp:257:67: error: too few arguments to function call, single argument 'tag' was not specified
  257 |     auto& func = *reinterpret_cast<script::Function*>(data->Value());
      |                                                       ~~~~~~~~~~~ ^
/opt/homebrew/include/v8-external.h:58:9: note: 'Value' declared here
   58 |   void* Value(ExternalPointerTypeTag tag) const;
      |         ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~
~/LibreSprite/src/script/v8/engine.cpp:277:103: error: too few arguments to function call, expected 3, have 2
  277 |       auto tpl = v8::FunctionTemplate::New(isolate, callFunc, v8::External::New(isolate, &entry.second));
      |                                                               ~~~~~~~~~~~~~~~~~                       ^
/opt/homebrew/include/v8-external.h:41:26: note: 'New' declared here
   41 |   static Local<External> New(Isolate* isolate, void* value,
      |                          ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              ExternalPointerTypeTag tag);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~
~/LibreSprite/src/script/v8/engine.cpp:290:116: error: too few arguments to function call, expected 3, have 2
  290 |       auto getterTpl = v8::FunctionTemplate::New(isolate, callFunc, v8::External::New(isolate, &entry.second.getter));
      |                                                                     ~~~~~~~~~~~~~~~~~                              ^
/opt/homebrew/include/v8-external.h:41:26: note: 'New' declared here
   41 |   static Local<External> New(Isolate* isolate, void* value,
      |                          ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              ExternalPointerTypeTag tag);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~
~/LibreSprite/src/script/v8/engine.cpp:293:116: error: too few arguments to function call, expected 3, have 2
  293 |       auto setterTpl = v8::FunctionTemplate::New(isolate, callFunc, v8::External::New(isolate, &entry.second.setter));
      |                                                                     ~~~~~~~~~~~~~~~~~                              ^
/opt/homebrew/include/v8-external.h:41:26: note: 'New' declared here
   41 |   static Local<External> New(Isolate* isolate, void* value,
      |                          ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   42 |                              ExternalPointerTypeTag tag);
      |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~
4 errors generated.
[723/770] Building CXX object src/script/...eFiles/script-lib.dir/duktape/engine.cpp.
ninja: build stopped: subcommand failed.

Note: I replaced the actual home folder address with ~.

To Reproduce
bash
git clone --recursive https://github.com/LibreSprite/LibreSprite

cd LibreSprite

git pull
git submodule update --init --recursive

brew install gnutls freetype jpeg webp pixman sdl2 sdl2_image tinyxml2 libarchive v8 ninja zlib xmlto dylibbundler cmake

mkdir build
cd build
    cmake \
      -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk \
      -G Ninja \
      ..
    ninja libresprite
Expected behaviour

I think LibreSprite should have been compiled.

OS/Hardware
  • Operative System: macOS 26.4.1
  • CPU: Apple Silicon M3