I’m glad to announce we’re ready to merge the long-running android_linux
branch into master
. The first step is this RFC.
As the name would imply, the emphasis of this branch has been to introduce initial support for Cinder on both Linux and Android. In addition, this branch introduces preliminary support for building Cinder using CMake.
Immediately relevant, independent of what platform you’re working with, is that this branch requires modification of a couple of settings in existing projects. In particular, the Cinder static library has been relocated to simplify linker settings overall.
Formerly on macOS, the Cinder static library has lived at lib/libcinder_d.a
and lib/libcinder.a
for Debug and Release configurations respectively. Now, it is located at lib/macosx/{Debug|Release}/libcinder.a
. This allows projects to use the $(CONFIGURATION)
build setting to distinguish between Debug and Release configurations.
To update your Xcode project, set Other Linker Flags build setting should now be:
"$(CINDER_PATH)/lib/macosx/$(CONFIGURATION)/libcinder.a"
for both configurations.
A similar change is required on MSW, where the Cinder static library has previously lived at lib/cinder-{v120|v140}_d.lib
and lib/cinder-{v120|v140}.lib
for Debug and Release configurations respectively. Now, it is located at lib\msw\{x86|x64}\{Debug|Release}\{v120|v140}\cinder.lib
. This change allows projects to use the same build setting independent of platform toolset, configuration, and architecture.
To update your Visual C++ project, set Additional Library Directories under Linker | General to <Path To Cinder>\lib\msw\$(PlatformTarget);<Path To Cinder>\lib\msw\$(PlatformTarget)\$(Configuration)\$(PlatformToolset)\
You’ll also find that the Xcode and VC projects for Cinder itself are now located in a proj/
directory at the root of the Cinder repository.
In addition, if you’d like to start to experiment with Android, Linux, or CMake ahead of this merge, please refer to this archived post for Android & Linux, and this post for CMake.
Barring anything unanticipated being discovered by this RFC, we’ll plan to merge this branch into master
in the coming week.
-Andrew