1What is CQRLOG? 2--------------- 3 4CQRLOG is an advanced ham radio logger based on MySQL database. Provides radio control 5based on hamlib libraries (currently support of 140+ radio types and models), DX cluster 6connection, online callbook, a grayliner, internal QSL manager database support and a most 7accurate country resolution algorithm based on country tables developed by OK1RR. CQRLOG is 8intended for daily general logging of HF, CW & SSB contacts and strongly focused on easy 9operation and maintenance. More at https://www.cqrlog.com/ 10 11![Image of CQRLOG](https://cqrlog.com/images/users/ok2cqr.png) 12 13How to contribute? 14------------------- 15 16You have to have Lazarus 2.0.6, fpc 3.0.4 compiler, MySQL server and clinet installed. 17CQRLOG is developed on Ubuntu 20.04, Lazarus and FreePascal are available in my pesronal repo https://launchpad.net/~ok2cqr/+archive/lazarus 18 19Compile with make and install with make DESTDIR=/home/yourusername/where_you_want_to_have_it install. If you are 20going to change the source code, fork the repo, do the changes, commit them and use Pull request. 21 22Dependencies 23------------- 24 25Build-Depends: lazarus, lcl, fp-utils, fp-units-misc, fp-units-gfx, fp-units-gtk2, fp-units-db, fp-units-math, fp-units-net 26 27Depends: libssl-dev, mysql-server | mariadb-server, mysql-client | mariadb-client, libhamlib2 (>= 1.2.10), libhamlib-utils (>= 1.2.10) 28 29Running build with Docker 30------------------------- 31 32If you do not want to install the dependencies into your main machine, you can do the build 33in a Docker container. You need to mount into that Docker container this directory and 34also the target directory where you want to put the alpha version of `cqrlog` you are 35building. 36 37This also helps if you want to build, e.g., on a Debian Stretch machine. Attempts at 38native builds on that platform have failed. Using a reasonably recent Ubuntu inside our 39Docker-based build environment, makes the build work even on Debian Stretch. 40 41That bad news is, you have to [install Docker](https://docs.docker.com/install/linux/docker-ce/ubuntu/) (CE is fine). 42 43That done, you can prepare an Ubuntu Docker image with the build tools as follows: 44 45 (cd docker-build && docker build -t this.registry.is.invalid/cqrlog-build .) 46 47(In case you wonder: There is no need to use a Docker registry, so we provide a registry 48host that is guaranteed to not exist.) 49 50Then, run the build itself with 51 52 sudo mkdir -p /usr/local/cqrlog-alpha && 53 docker run -ti -u root -v $(pwd):/home/cqrlog/build \ 54 -v /usr/local/cqrlog-alpha:/usr/local/cqrlog-alpha this.registry.is.invalid/cqrlog-build 55 56To use your build, make sure that you have no instance of `cqrlog` running, backup 57`$HOME/.config/cqrlog` (if you ever used `cqrlog` before), add 58`/usr/local/cqrlog-alpha/usr/bin` to your `$PATH` and start `cqrlog` from there. 59