I love libCinder for many years! I am mostly happy with the 0.9.3 release for macosx, but I have an app that needs libCairo, and it fails to build (was OK in 0.9.3 built from source last year). I get the same issues with my own app and all of the examples in _svg folder too. I even tried making a new project with Tinderbox. Looking at the Blocks/Cairo folder, it looks like some of the paths in the cinderblock.xml file don’t match the contents of the Blocks/Cairo folder. For example Cairo.h doesn’t exist, instead it’s cairo.h and in a different path. Perhaps the libcairo.a file would be OK but I can’t get past the include errors. I hesitate to modify any of the downloaded files without some expert guidance. Thanks for any tips!
.
Hi - this is a little mysterious. I just re-downloaded the distro that’s on GitHub and built an SVG sample and also used TinderBox to create a new one and both worked.
Are you getting a link error or a compile error? It seems your blocks/cairo/include/cinder/cairo/Cairo.h is missing based on that Finder screenshot. I just verified that it’s present in the .zip file, and it’s on GitHub here.
Thank you! It seems to be something with my app’s Xcode project setup. I got a fresh copy of the 0.9.3 distribution and got all the header paths fixed, but now link errors trying to build the x86_64 architecture for Standard Architectures $(ARCHS_STANDARD). I’ll keep trying and let you know!
ld: warning: ignoring file ‘../../../lib/macosx/Debug/libcinder.a(libcinder.a-arm64-master.o)’: found architecture ‘arm64’, required architecture ‘x86_64’
Undefined symbols for architecture x86_64:
“ghc::filesystem::path::postprocess_path_with_format(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator>&, ghc::filesystem::path::format)”, referenced from:
ghc::filesystem::path::path<std::\__1::basic_string<char, std::\__1::char_traits<char>, std::\__1::allocator<char>>, ghc::filesystem::path>(std::\__1::basic_string<char, std::\__1::char_traits<char>, std::\__1::allocator<char>> const&, ghc::filesystem::path::format) in jjlgSatgameProto.o
ghc::filesystem::path::path<char \[6\], ghc::filesystem::path>(char const (&) \[6\], ghc::filesystem::path::format) in jjlgSatgameProto.o
Thanks, I had to rebuild my Xcode project file. The destination had been set to “My Mac (Rosetta)” and I couldn’t find a way to get back to “My Mac” without “Rosetta”.
Now everything builds and runs perfectly - BUT it fails to Archive the executable, and the Report navigator indicates the problem is libcinder.a is only supported for arm64. It’s the same with my apps and the sample apps of course.
Ignoring file ‘../../../lib/macosx/Release/libcinder.a(libcinder.a-arm64-master.o)’: found architecture ‘arm64’, required architecture ‘x86_64’
I’m on a MacBook Pro M4, Tahoe 26.1, Xcode 26.1.1. I do have an old Intel MacBook 2013 (x86_64), seldom used. For now, I’m satisfied, but eventually it would be nice to build universal executables.