Hello, got a bit of time to look at it, but it fails on Ubuntu arm64:
$ uname -a Linux u2204 5.15.0-107-generic #117-Ubuntu SMP Mon Apr 29 14:37:09 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux This is my usual development environment lately and it compiles fine with the usual Makefiles. The errors (after: mkdir build, cd build, cmake ..) are: $ make [ 0%] Generating cfg.tab.c and cfg.tab.h from cfg.y [ 0%] Generating lex.yy.c from cfg.lex [ 0%] Built target GenerateParser [ 0%] Building C object src/core/CMakeFiles/kamailio.dir/action.c.o cc: error: unrecognized command-line option ‘-m64’ cc: error: unrecognized command-line option ‘-minline-all-stringops’ make[2]: *** [src/core/CMakeFiles/kamailio.dir/build.make:88: src/core/CMakeFiles/kamailio.dir/action.c.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:887: src/core/CMakeFiles/kamailio.dir/all] Error 2 make: *** [Makefile:136: all] Error 2 I am not familiar with cmake and no much time to dig in at this moment, so I thought to just report it. Cheers, Daniel On 17.06.24 09:49, Xenofon Karamanos via sr-dev wrote: > Hey Daniel and all, > > I have updated the branch to compile some of the modules and libs, so > we can have a fully runnable default configuration. > > Same steps as before: > |mkdir build && cd build| > Then run CMake for the configuration and any options you would like. > |cmake ..| (you can also then use |ccmake .| for a visual of > the offered options). > I am currently using the following commands to have it installed in > build/kam-6 folder but you of course can use any prefix and > definitions you like (hopefully): > | cmake -DCMAKE_INSTALL_PREFIX=./kam-6 -DINCLUDE_MODULES="async" > ..| > Build and install using make > | make -j4| install > > There should now be a |kamailio| binary in build/kam-6/sbin that you > can run directly |./sbin/kamailio|. > Also, you have to make sure the build/kam-6/var/run folder exists so > it can run normally even no file is required to be create there with > the default config. > Any reviews and feedback is deeply appreciated, > > Thanks > Xenofon > > > ------------------------------------------------------------------------ > *From:* Xenofon Karamanos <x...@gilawa.com> > *Sent:* Wednesday, June 12, 2024 11:09 > *To:* Kamailio (SER) - Development Mailing List > <sr-dev@lists.kamailio.org>; mico...@gmail.com <mico...@gmail.com> > *Subject:* Re: [sr-dev] Initial Support for CMake in Kamailio - > Feedback Needed! > > Hey Daniel, > > Thank you for your taking the time to provide feedback. > CMake is the de-facto "build" system (it's actually a generator for > buildsystems like make, ninja and so on) for C and C++ programs as far > as i know. There are some alternatives, like Meson i think, that i am > really not familiar with and not seen it in the wild enough. > So to answer your questions: > - CMake currently builds only the files found in the src/core > folder. For the modules, we will probably have to adopt each > module separately to CMake. Not something difficult, i would say but > there are lots of modules. Maybe you can suggest some modules we want > to get it up and running for some initial set-up and to see how to > properly adjust the workflow to CMake. > - Most probably yes, i have seen CMake build docs with doxygen. > I am not really familiar with our docs generator but i think as long > as we use a well-know generator, we can have seperate targets for > generating the Docs and probably custom files from the xml like Readme > files. > - At the end of the CMake integration, there should be no need > for any of the Makefiles. CMake will generate the appropriate ones for > make, ninja, Visual Studio or whatever build you choose (as long as > it's supported by CMake) and use that for building the targets. At > this point also, no makefiles from repositort where used to build the > core. When you run CMake in the build folder, it creates a new set of > makefiles in there, that do the job. > > I hope these clear some of your questions. If you need any > more information or have any suggestions regarding modules/docs > please let me know, > Xenofon > > ------------------------------------------------------------------------ > *From:* Daniel-Constantin Mierla <mico...@gmail.com> > *Sent:* Wednesday, June 12, 2024 09:21 > *To:* Kamailio (SER) - Development Mailing List > <sr-dev@lists.kamailio.org> > *Cc:* Xenofon Karamanos <x...@gilawa.com> > *Subject:* Re: [sr-dev] Initial Support for CMake in Kamailio - > Feedback Needed! > > > Hello, > > > thanks for spending time in this direction! Makefiles were for long > supposed to get a review. > > > I am not familiar for CMake, but if it is considered a good option, I > am fine with it. For now, a few questions: > > > - is it already building the modules as well, or only the core for now? > > - can it be used also for building the docs (e.g., README files for > modules)? > > - any of the old Makefiles need to be kept, or all of them will be > replaced? > > > Cheers, > Daniel > > > On 11.06.24 18:11, Xenofon Karamanos via sr-dev wrote: > > Hello all, > > I've started working on integrating CMake as a build system for > the Kamailio. This is an initial step towards potentially offering > CMake as an alternative to the current build system across the > entire Kamailio project. > Right now, the CMake configuration is quite basic and covers only > the core module. It offers limited options described in > Makefile.defs that are required to build the core module. > Some notes regarding the definitions can be found also in the > CMakelists.notes > > <https://github.com/kamailio/kamailio/compare/master...cmake#diff-4e8ba0f2d53c1a8b57e416e35f56d4f66bbc82d8b8d9317e2a72f1dd395b9d03> > that > made the build failed and maybe it's good to remove from current > Makefiles as well, if i am not wrong. > Before we consider extending it to other modules and components, i > would like some feedback whether you find it useful at all. > You can find the initial CMake files in the |cmake| branch. > Please take a look and feel free to share any feedback or > suggestions. Your input will be much appreciated and nessecary if > we want CMake as a build system. > > For anyone wanting to try and compile using cmake, here are some > basic instructions on how to get you started. > Checkout the |cmake| branch of kamailio repo. > Create a new folder, let's call it build. > |mkdir build && cd build| > Then run CMake for the configuration > |cmake ..| (you can also then use |ccmake .| for a visual of > the offered options) > Build and install using make > | make -j4| > | make install| > OR > Build and install using cmake > cmake --build . > cmake --install . > > You can of course use the CMake variable |CMAKE_INSTALL_PREFIX| > to change the installation paths as follows and of course other > preprocessor defintions: > |cmake -DCMAKE_INSTALL_PREFIX=./kamailio-cmake -DUSE_TCP=0 ..| > This will install it in the |build/kamailio-cmake| folder but > fails to build because USE_TCP is required for kamailio to build > (Check CMakelists.notes). > > Thank you all for your continuous contributions and support. > Looking forward to hearing your thoughts and insights. > Best regards, > Xenofon > https://github.com/kamailio/kamailio/tree/cmake > <https://github.com/kamailio/kamailio/tree/cmake> > <https://github.com/kamailio/kamailio/tree/cmake> > > GitHub - kamailio/kamailio at cmake > <https://github.com/kamailio/kamailio/tree/cmake> > Kamailio - The Open Source SIP Server for large VoIP and real-time > communication platforms - - GitHub - kamailio/kamailio at cmake > github.com > > > > _______________________________________________ Kamailio (SER) - > Development Mailing List To unsubscribe send an email to > sr-dev-le...@lists.kamailio.org > <mailto:sr-dev-le...@lists.kamailio.org> > > -- Daniel-Constantin Mierla (@ asipto.com) twitter.com/miconda -- > linkedin.com/in/miconda Kamailio Consultancy, Training and Development > Services -- asipto.com > > _______________________________________________ > Kamailio (SER) - Development Mailing List > To unsubscribe send an email to sr-dev-le...@lists.kamailio.org -- Daniel-Constantin Mierla (@ asipto.com) twitter.com/miconda -- linkedin.com/in/miconda Kamailio Consultancy, Training and Development Services -- asipto.com
_______________________________________________ Kamailio (SER) - Development Mailing List To unsubscribe send an email to sr-dev-le...@lists.kamailio.org