Opened 9 years ago

Closed 2 years ago

#1445 closed enhancement (fixed)

CMake for HM

Reported by: jsauer Owned by:
Priority: minor Milestone:
Component: HM Version: HM-16.7
Keywords: Cc: ksuehring, davidf, karlsharman, jct-vc@…

Description

Hi,

I created a CMake configuration file for HM. You can find it attached. Create a folder named HM-dir/build/cmake and put it there. I also attached a short script (for Linux) which is meant to be run from the same directory and will build both debug and release configuration. I hope you will find this helpful and include it in future releases. CMake makes it easy to build configuration for a wide variety of systems. I only tested the generation of Unix makefiles for Linux, but other platforms should work as well.

Attachments (3)

CMakeLists.txt (6.7 KB) - added by jsauer 8 years ago.
cmake configuration file
buildAll.sh (318 bytes) - added by jsauer 8 years ago.
build script for linux
buildAllHBD.sh (376 bytes) - added by jsauer 8 years ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 8 years ago by ksuehring

This fails (MacOS) with

Scanning dependencies of target TLibStatisticsStatic
make[2]: *** No rule to make target `CMakeFiles/TLibStatisticsStatic.dir/build'.  Stop.
make[1]: *** [CMakeFiles/TLibStatisticsStatic.dir/all] Error 2
make: *** [all] Error 2

Also missing

  • compiler options for extended warnings
  • compiler options to treat warnings as errors
  • Build of High Bit Depth variant of encoder / decoder

Changed 8 years ago by jsauer

cmake configuration file

Changed 8 years ago by jsauer

build script for linux

Changed 8 years ago by jsauer

comment:2 Changed 8 years ago by jsauer

I believe, I fixed the problem, but I don't use MacOS, please try it. Though I don't think that problem was specific to MacOS.

I also added the missing options, except for Werror, but I added a line which can be uncommented for that.

And I added the High Bit Depth variants, they compile, but I couldn't test them.

comment:3 Changed 2 years ago by ksuehring

  • Resolution set to fixed
  • Status changed from new to closed

We switched to the VTM Cmake build system quite a while ago. Closing as fixed.

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

  • David Flynn(Subscriber)
  • jct-vc@…(Subscriber)
  • Johannes Sauer(Reporter, Participant)
  • Karl Sharman(Subscriber)
  • karl.sharman@…(Always)
  • Karsten Suehring(Subscriber, Participant, Always)