bloomberg / blazingmq

A modern high-performance open source message queuing system
https://bloomberg.github.io/blazingmq/
Apache License 2.0
2.54k stars 132 forks source link

Help needed building blazingmq #48

Closed ajanicij closed 1 year ago

ajanicij commented 1 year ago

Hi,

I am new here, trying to build the code on Ubuntu 20.04. I ran into an issue running cmake:

CMake Error at /usr/local/share/cmake/BdeBuildSystem/BdeEmitPkgConfigFile.cmake:17 (message): You need to supply LIBDIR to bbs_emit_pc_files or set CMAKE_INSTALL_LIBDIR Call Stack (most recent call first): etc/cmake/TargetBMQStyleUor.cmake:119 (bbs_emit_pkgconfig_file) src/groups/mqb/CMakeLists.txt:27 (bmq_emit_pkg_config)

I am not an expert user of CMake, can anybody tell me what I am missing?

jll63 commented 1 year ago

We have instructions for building BlazingMQ in a Ubuntu 22.04 Docker container. There is also a PR with a script to build BMQ that does not rely on Docker. It should be merged to the main branch soon.

We have not yet tried to build specifically on Ubuntu 20.04. If you want to try either procedure with 20.04, we would like to hear how it went! Otherwise, we will probably look into this in the near future.

ajanicij commented 1 year ago

I tried running bin/build-ubuntu.sh off the build-ubuntu branch. It went much further than I was able to get, but still not all the way. Here's the message:

... -- Installing: /home/aleks/Downloads/blazingmq/bin/lib64/opt_dbg_exc_mt/pkgconfig/ntc.pc -- Installing: /home/aleks/Downloads/blazingmq/bin/lib64/pkgconfig/ntc.pc -- Installing: /home/aleks/Downloads/blazingmq/bin/lib64/opt_dbg_exc_mt_64/pkgconfig/ntc.pc -- Installing: /home/aleks/Downloads/blazingmq/bin/lib64/opt_dbg_exc_mt_pic/pkgconfig/ntc.pc -- Installing: /home/aleks/Downloads/blazingmq/bin/lib64/opt_dbg_exc_mt_64_pic/pkgconfig/ntc.pc ~/Downloads/blazingmq/bin CMake Error: The source directory "/home/aleks/Downloads/blazingmq/bin" does not appear to contain CMakeLists.txt.

jll63 commented 1 year ago

Are you running the script from the build directory? If yes, please try again, this time running ./bin/build-ubuntu.sh from the root of the repository.

I tried the script in a Ubuntu 20.04 WSL container. I had to upgrade cmake, but, afterwards, the build succeeded.

ajanicij commented 1 year ago

Yes, that was the problem: I was running the script from the wrong directory. I also had to upgrade cmake and do sudo apt install libbenchmark-dev but after that, the build was successful.

Thanks!

ajanicij commented 1 year ago

Build passing (in Ubuntu 20.04) on forked repo, once the PR is merged ./bin/build-ubuntu.sh will be in the main repo too.