You tried 3 possibilities to start qjackctl on boot up.
Using /etc/rc.local:
I cannot suggest to use it because it's deprecated and known that it has limitations due to Compatibility with SysV. We have seen many problems here on this site using it. Following the recommendation of the developers from systemd you should avoid using it.
Using crontab:
The entry you have given in your question cannot work. I'm not familiar with crontab but you have to prepend the entry in your crontab with @reboot
so at least it should look something like
@reboot qjackctl &
Please note the &
at the end. It is necessary to send the program to the background, otherwise crontab get stuck.
Using systemd:
For my opinion this is the best solution because you have all possibilities to adapt the service to the needed environment. You told that you have also tried systemd but does not show us what Unit file you used. There are many examples here on the side. You may find some on tag systemd.
rc
->bash: command 'rc' not found. It can be installed with 'sudo apt install rc'
.