Skip to content

[IDEA] Engine Design - static libnetworking mode #124

@kbrddestroyer

Description

@kbrddestroyer

Discussed in #113

Originally posted by Pain67 May 31, 2025
I was playing around with the engine (try to build the example client / server) and noticed that in the current design, after cmake & make there are several files created (separate libbackends.a, libevents.a, libserialization.a and libnetworking.so). I had to link against multiple libraries, add multiple paths to include and also had to modify some of the files such as "Synapse.hpp" to change the include paths (from "#include <networking-core/SynapseUtility.hpp>" to "#include <networking/networking-core/SynapseUtility.hpp>" (I may just doing something wrong).

Would it be more easy from the end user perspective to change this split design to a "header only" library. What I mean is that after building the result would be "AxonEngine.hpp" and "libaxonengine.a" that can be included as a static library?
(Or add option between static or shared library in the build process)

Summary

Create flag to build static version of libnetworking.

Metadata

Metadata

Assignees

Labels

buildBuild problemsenhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions