Debian boot issue on HP M01-F3006 with Ryzen AMD 5 chip and integrated GPU



This comment is based on the information provided in the text file attached in the link shared by @Brickwizard .


If there are any errors or missed steps in my comment, please let me know, and I will make the necessary edits.

Installing MX21 and LinuxCNC​

Step 1: Update and Upgrade MX21​

After installing MX21, you'll need to update and upgrade the installed packages. Open a terminal and run the following commands:

Code:
sudo apt update
sudo apt upgrade

Step 2: Install Real Time Kernel​

Use the Synaptic Package Manager to install the real-time kernel.
Ensure that all repositories are selected (enabled) in Synaptic by clicking on 'Settings,' then 'Repositories.' Check the box to enable all available repositories.
  1. Make sure there is an internet connection.
  2. Click reload all.
  3. Choose Kernel and Modules.
  4. Scroll to linux-headers-6.0.0-6mx-rt-amd64 and mark it for installation.
  5. Scroll to linux-image-6.0.0-6mx-rt-amd64-unsigned and mark it for installation.
  6. Click apply.

Step 3: Update and Upgrade MX21 Again​

Open a terminal and run the following commands:

Code:
sudo apt update
sudo apt upgrade
sudo apt autoremove

Step 4: Verify Kernel Installation​

Reboot Linux and run the following command to verify that the real-time kernel is loaded:

Code:
uname -a

Step 5: Install LinuxCNC Dependencies​

To install the necessary dependencies for LinuxCNC, run the following command:

Code:
sudo apt install -y git debhelper dh-python libudev-dev tcl8.6-dev tk8.6-dev bwidget tclx libeditreadline-dev asciidoc dblatex docbook-xsl dvipng ghostscript graphviz groff imagemagick inkscape python3-lxml source-highlight w3c-linkchecker xsltproc texlive-extra-utils texlive-font-utils texlive-fonts-recommended texlive-lang-cyrillic texlive-lang-french texlive-lang-german texlive-lang-polish texlive-lang-spanish texlive-latex-recommended asciidoc-dblatex python3-dev python3-tk libxmu-dev libglu1-mesa-dev libgl1-mesa-dev libgtk2.0-dev libgtk-3-dev gettext intltool autoconf libboost-python-dev libmodbus-dev libusb-1.0-0-dev psmisc yapps2 libepoxy-dev python3-xlib python3-pyqt5 python3-dbus.mainloop.pyqt5 python3-pyqt5.qtopengl python3-pyqt5.qsci python3-pyqt5.qtmultimedia python3-pyqt5.qtquick qml-module-qtquick-controls gstreamer1.0-plugins-bad libqt5multimedia5-plugins pyqt5-dev-tools python3-dev python3-setuptools python3-wheel python3-pip python3-yapps dpkg-dev python3-serial libtk-img qttools5-dev qttools5-dev-tools python3-wheel espeak espeak-data espeak-ng freeglut3 gdal-data gstreamer1.0-tools libaec0 libarmadillo10 libarpack2 libcfitsio9 libcharls2 libdap27 libdapclient6v5 libespeak1 libfreexl1 libfyba0 libgdcm3.0 libgeos-c1v5 libgeotiff5 libgif7 libgtksourceview-3.0-dev libhdf4-0-alt libhdf5-103-1 libhdf5-hl-100 libimagequant0 libkmlbase1 libkmldom1 libkmlengine1 liblept5 libmariadb3 libminizip1 libodbc1 libogdi4.1 libportaudio2 libpq5 libprotobuf23 libqhull8.0 librttopo1 libsocket++1 libspatialite7 libsuperlu5 libsz2 libtbb2 libtesseract4 liburiparser1 libxerces-c3.2 libxml2-dev mariadb-common mesa-utils mysql-common odbcinst odbcinst1debian2 proj-bin proj-data python3-configobj python3-espeak python3-gi-cairo python3-olefile python3-opencv python3-opengl python3-pil python3-pil.imagetk python3-pyqt5.qtsvg python3-pyqt5.qtwebkit tcl-tclreadline geotiff-bin gdal-bin glew-utils libgtksourceview-3.0-doc libhdf4-doc libhdf4-alt-dev hdf4-tools odbc-postgresql tdsodbc ogdi-bin python-configobj-doc libgle3 python-pil-doc python3-sqlalchemy python3-gst-1.0 texlive-lang-european build-essential:native

Step 6: Clone LinuxCNC​

Use these commands to clone the LinuxCNC repository:

Code:
mkdir -p ~/LinuxCNC_Install/linuxcnc
cd ~/LinuxCNC_Install/linuxcnc
git clone https://github.com/LinuxCNC/linuxcnc.git rip

Step 7: Check Build Dependencies​

Use these commands to check build dependencies:

Code:
cd ~/LinuxCNC_Install/linuxcnc/rip/debian
./configure uspace no-docs
cd ~/LinuxCNC_Install/linuxcnc/rip
dpkg-checkbuilddeps

Step 8: Install Missing Dependencies​

If there are missing dependencies, install them with:

Code:
sudo apt install -y <missing dependencies>

Repeat steps 7-8 until there are no more missing dependencies.

Step 9: Build LinuxCNC​

Use these commands to build LinuxCNC:

Code:
cd ~/LinuxCNC_Install/linuxcnc/rip
dpkg-buildpackage -b -uc
cd ~/LinuxCNC_Install/linuxcnc
sudo dpkg -i linuxcnc-uspace_2.10.0~pre0_amd64.deb
cd ~/LinuxCNC_Install/linuxcnc/rip/src
./configure --with-realtime=uspace
make
sudo make setuid

Step 10: Install Mesaflash​

Use these commands to install Mesaflash:

Code:
cd ~
sudo apt install libpci-dev libmd-dev pkg-config build-essential git
git clone https://github.com/LinuxCNC/mesaflash.git
cd mesaflash
make

Step 11: Run LinuxCNC​

To run LinuxCNC and open Axis to make sure simulation functions work, use this command:
Code:
cd
linuxcnc

Step 12: Install QtPyVCP​

To install QtPyVCP, run these commands:

Code:
cd
sudo apt install python3-pyqt5 python3-dbus.mainloop.pyqt5 python3-pyqt5.qtopengl python3-pyqt5.qsci python3-pyqt5.qtmultimedia python3-pyqt5.qtquick qml-module-qtquick-controls gstreamer1.0-plugins-bad libqt5multimedia5-plugins pyqt5-dev-tools python3-dev python3-setuptools python3-wheel python3-pip qttools5-dev qttools5-dev-tools python3-qtpy python3-psutil python3-docopt
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/qtpyvcp
cd qtpyvcp
python3 -m pip install --editable .
cp scripts/.xsessionrc ~/

Then, you need to log out and back in for the changes to take effect.

Step 13: Test QtPyVCP​

To test QtPyVCP, execute the following commands:

Code:
qtpyvcp -h
qtpyvcp -i

Step 14: Install Probebasic​

To install Probebasic, execute the following commands:

Code:
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/probe_basic.git
cd probe_basic
git checkout python3
qcompile .
python3 -m pip install --editable .
cp -r ~/LinuxCNC_Install/probe_basic/probe_basic/fonts/ ~/.local/share/
cp -r ~/LinuxCNC_Install/probe_basic/config/probe_basic/ ~/linuxcnc/configs/

Step 15: Install QtPyVCP Conversational G-Code​

To install QtPyVCP Conversational G-Code, execute the following commands:

Code:
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/qtpyvcp.conversational-gcode.git
cd qtpyvcp.conversational-gcode
git checkout python3
python3 -m pip install --editable .

Step 16: Install Additional Python Libraries​

To install additional Python libraries, execute the following commands:

Code:
pip install pyudev
pip install vtk
pip install deepdiff
pip install simpleeval
pip install pyqtgraph
pip install --upgrade numpy==1.23.5

Step 17: Edit Probe Basic​

To edit Probe Basic, execute the following command:

Code:
editvcp probe_basic

Now you have a detailed step-by-step guide for installing MX21, LinuxCNC, and other necessary components.
 
Last edited:
This comment is based on the information provided in the text file attached in the link shared by @Brickwizard .


If there are any errors or missed steps in my comment, please let me know, and I will make the necessary edits.

Installing MX21 and LinuxCNC​

Step 1: Update and Upgrade MX21​

After installing MX21, you'll need to update and upgrade the installed packages. Open a terminal and run the following commands:

Code:
sudo apt update
sudo apt upgrade

Step 2: Install Real Time Kernel​

Use the Synaptic Package Manager to install the real-time kernel:
  1. Make sure there is an internet connection.
  2. Click reload all.
  3. Choose Kernel and Modules.
  4. Scroll to linux-headers-6.0.0-6mx-rt-amd64 and mark it for installation.
  5. Scroll to linux-image-6.0.0-6mx-rt-amd64-unsigned and mark it for installation.
  6. Click apply.

Step 3: Update and Upgrade MX21 Again​

Open a terminal and run the following commands:

Code:
sudo apt update
sudo apt upgrade
sudo apt autoremove

Step 4: Verify Kernel Installation​

Reboot Linux and run the following command to verify that the real-time kernel is loaded:

Code:
uname -a

Step 5: Install LinuxCNC Dependencies​

To install the necessary dependencies for LinuxCNC, run the following command:

Code:
sudo apt install -y git debhelper dh-python libudev-dev tcl8.6-dev tk8.6-dev bwidget tclx libeditreadline-dev asciidoc dblatex docbook-xsl dvipng ghostscript graphviz groff imagemagick inkscape python3-lxml source-highlight w3c-linkchecker xsltproc texlive-extra-utils texlive-font-utils texlive-fonts-recommended texlive-lang-cyrillic texlive-lang-french texlive-lang-german texlive-lang-polish texlive-lang-spanish texlive-latex-recommended asciidoc-dblatex python3-dev python3-tk libxmu-dev libglu1-mesa-dev libgl1-mesa-dev libgtk2.0-dev libgtk-3-dev gettext intltool autoconf libboost-python-dev libmodbus-dev libusb-1.0-0-dev psmisc yapps2 libepoxy-dev python3-xlib python3-pyqt5 python3-dbus.mainloop.pyqt5 python3-pyqt5.qtopengl python3-pyqt5.qsci python3-pyqt5.qtmultimedia python3-pyqt5.qtquick qml-module-qtquick-controls gstreamer1.0-plugins-bad libqt5multimedia5-plugins pyqt5-dev-tools python3-dev python3-setuptools python3-wheel python3-pip python3-yapps dpkg-dev python3-serial libtk-img qttools5-dev qttools5-dev-tools python3-wheel espeak espeak-data espeak-ng freeglut3 gdal-data gstreamer1.0-tools libaec0 libarmadillo10 libarpack2 libcfitsio9 libcharls2 libdap27 libdapclient6v5 libespeak1 libfreexl1 libfyba0 libgdcm3.0 libgeos-c1v5 libgeotiff5 libgif7 libgtksourceview-3.0-dev libhdf4-0-alt libhdf5-103-1 libhdf5-hl-100 libimagequant0 libkmlbase1 libkmldom1 libkmlengine1 liblept5 libmariadb3 libminizip1 libodbc1 libogdi4.1 libportaudio2 libpq5 libprotobuf23 libqhull8.0 librttopo1 libsocket++1 libspatialite7 libsuperlu5 libsz2 libtbb2 libtesseract4 liburiparser1 libxerces-c3.2 libxml2-dev mariadb-common mesa-utils mysql-common odbcinst odbcinst1debian2 proj-bin proj-data python3-configobj python3-espeak python3-gi-cairo python3-olefile python3-opencv python3-opengl python3-pil python3-pil.imagetk python3-pyqt5.qtsvg python3-pyqt5.qtwebkit tcl-tclreadline geotiff-bin gdal-bin glew-utils libgtksourceview-3.0-doc libhdf4-doc libhdf4-alt-dev hdf4-tools odbc-postgresql tdsodbc ogdi-bin python-configobj-doc libgle3 python-pil-doc python3-sqlalchemy python3-gst-1.0 texlive-lang-european build-essential:native

Step 6: Clone LinuxCNC​

Use these commands to clone the LinuxCNC repository:

Code:
mkdir -p ~/LinuxCNC_Install/linuxcnc
cd ~/LinuxCNC_Install/linuxcnc
git clone https://github.com/LinuxCNC/linuxcnc.git rip

Step 7: Check Build Dependencies​

Use these commands to check build dependencies:

Code:
cd ~/LinuxCNC_Install/linuxcnc/rip/debian
./configure uspace no-docs
cd ~/LinuxCNC_Install/linuxcnc/rip
dpkg-checkbuilddeps

Step 8: Install Missing Dependencies​

If there are missing dependencies, install them with:

Code:
sudo apt install -y <missing dependencies>

Repeat steps 7-8 until there are no more missing dependencies.

Step 9: Build LinuxCNC​

Use these commands to build LinuxCNC:

Code:
cd ~/LinuxCNC_Install/linuxcnc/rip
dpkg-buildpackage -b -uc
cd ~/LinuxCNC_Install/linuxcnc
sudo dpkg -i linuxcnc-uspace_2.10.0~pre0_amd64.deb
cd ~/LinuxCNC_Install/linuxcnc/rip/src
./configure --with-realtime=uspace
make
sudo make setuid

Step 10: Install Mesaflash​

Use these commands to install Mesaflash:

Code:
cd ~
sudo apt install libpci-dev libmd-dev pkg-config build-essential git
git clone https://github.com/LinuxCNC/mesaflash.git
cd mesaflash
make

Step 11: Run LinuxCNC​

To run LinuxCNC and open Axis to make sure simulation functions work, use this command:
Code:
cd
linuxcnc

Step 12: Install QtPyVCP​

To install QtPyVCP, run these commands:

Code:
cd
sudo apt install python3-pyqt5 python3-dbus.mainloop.pyqt5 python3-pyqt5.qtopengl python3-pyqt5.qsci python3-pyqt5.qtmultimedia python3-pyqt5.qtquick qml-module-qtquick-controls gstreamer1.0-plugins-bad libqt5multimedia5-plugins pyqt5-dev-tools python3-dev python3-setuptools python3-wheel python3-pip qttools5-dev qttools5-dev-tools python3-qtpy python3-psutil python3-docopt
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/qtpyvcp
cd qtpyvcp
python3 -m pip install --editable .
cp scripts/.xsessionrc ~/

Then, you need to log out and back in for the changes to take effect.

Step 13: Test QtPyVCP​

To test QtPyVCP, execute the following commands:

Code:
qtpyvcp -h
qtpyvcp -i

Step 14: Install Probebasic​

To install Probebasic, execute the following commands:

Code:
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/probe_basic.git
cd probe_basic
git checkout python3
qcompile .
python3 -m pip install --editable .
cp -r ~/LinuxCNC_Install/probe_basic/probe_basic/fonts/ ~/.local/share/
cp -r ~/LinuxCNC_Install/probe_basic/config/probe_basic/ ~/linuxcnc/configs/

Step 15: Install QtPyVCP Conversational G-Code​

To install QtPyVCP Conversational G-Code, execute the following commands:

Code:
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/qtpyvcp.conversational-gcode.git
cd qtpyvcp.conversational-gcode
git checkout python3
python3 -m pip install --editable .

Step 16: Install Additional Python Libraries​

To install additional Python libraries, execute the following commands:

Code:
pip install pyudev
pip install vtk
pip install deepdiff
pip install simpleeval
pip install pyqtgraph
pip install --upgrade numpy==1.23.5

Step 17: Edit Probe Basic​

To edit Probe Basic, execute the following command:

Code:
editvcp probe_basic

Now you have a detailed step-by-step guide for installing MX21, LinuxCNC, and other necessary components.
Thank you very much! Good work.

Small issue. Step 2 Item 4 (Fixed see Edit below)

linux-header-6.0.... is not showing and after running updates and upgrades it still dose not show. How do I get that in my system?

Edit: Solved, All repos need to be selected (enabled). In synaptic, click settings, repositories, then check the box to enable all that is there.

Small update, synaptic and the terminal should not be open at the same time. The terminal will fail and a locked error will be displayed. Close synaptic and the terminal will run just fine after that.
 
Last edited:
Thank you very much! Good work.

Small issue. Step 2 Item 4 (Fixed see Edit below)

linux-header-6.0.... is not showing and after running updates and upgrades it still dose not show. How do I get that in my system?

Edit: Solved, All repos need to be selected (enabled). In synaptic, click settings, repositories, then check the box to enable all that is there.
Thx . Updated
 
Thx . Updated
I got the following error on step 12.

fatal: destination path 'qtpyvcp' already exists and is not an empty directory.
ERROR: File "setup.py" not found. Directory cannot be installed in editable mode: /home/CNCMill/LinuxCNC_Install/qtpyvcp
(A "pyproject.toml" file was found, but editable mode currently requires a setup.py based build.)

not sure what to do.

The gentlemen over at Linuxcnc are saying that the MX21 I have is not going to be compatible with probe basic because of changes to the python code. Probe basic has not yet been updated to work with that change. They are recommending that I get Debian 11 or wait for Debian 12. This confuses me because MX is based off debian??

I would like to keep trying. If anyone knows what this error means and possible fixes I would like to keep trying. We are really close. Thank you all for the kind help.

This is sited as the reason for the issue.
mid way down you will see this,
python3 -m venv venv --system-site-packages

The "venv" is sited as the issue for our problems and is new.

Here is the whole text output for your reference.

CNCMill@CNCMill:~/LinuxCNC_Install/qtpyvcp
$ cd
sudo apt install python3-pyqt5 python3-dbus.mainloop.pyqt5 python3-pyqt5.qtopengl python3-pyqt5.qsci python3-pyqt5.qtmultimedia python3-pyqt5.qtquick qml-module-qtquick-controls gstreamer1.0-plugins-bad libqt5multimedia5-plugins pyqt5-dev-tools python3-dev python3-setuptools python3-wheel python3-pip qttools5-dev qttools5-dev-tools python3-qtpy python3-psutil python3-docopt
cd ~/LinuxCNC_Install
git clone https://github.com/kcjengr/qtpyvcp
cd qtpyvcp
python3 -m pip install --editable .
cp scripts/.xsessionrc ~/
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
python3-docopt is already the newest version (0.6.2-3).
gstreamer1.0-plugins-bad is already the newest version (1.18.4-3).
pyqt5-dev-tools is already the newest version (5.15.2+dfsg-3).
python3-dbus.mainloop.pyqt5 is already the newest version (5.15.2+dfsg-3).
python3-pyqt5 is already the newest version (5.15.2+dfsg-3).
python3-pyqt5.qtmultimedia is already the newest version (5.15.2+dfsg-3).
python3-pyqt5.qtopengl is already the newest version (5.15.2+dfsg-3).
python3-pyqt5.qtquick is already the newest version (5.15.2+dfsg-3).
python3-pip is already the newest version (20.3.4-4+deb11u1).
python3-psutil is already the newest version (5.8.0-1).
python3-qtpy is already the newest version (1.9.0-3).
python3-dev is already the newest version (3.9.2-3).
python3-pyqt5.qsci is already the newest version (2.11.6+dfsg-2).
libqt5multimedia5-plugins is already the newest version (5.15.2-3).
qml-module-qtquick-controls is already the newest version (5.15.2-2).
qttools5-dev is already the newest version (5.15.2-5).
qttools5-dev-tools is already the newest version (5.15.2-5).
python3-setuptools is already the newest version (52.0.0-4).
python3-wheel is already the newest version (0.34.2-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
fatal: destination path 'qtpyvcp' already exists and is not an empty directory.
ERROR: File "setup.py" not found. Directory cannot be installed in editable mode: /home/CNCMill/LinuxCNC_Install/qtpyvcp
(A "pyproject.toml" file was found, but editable mode currently requires a setup.py based build.)
CNCMill@CNCMill:~/LinuxCNC_Install/qtpyvcp
$
 
Last edited:
The error message you're receiving is related to trying to clone the qtpyvcp repository into a directory where it already exists and trying to install a Python package in editable mode when a setup.py file is not present.

To resolve these issues, follow these steps:

  1. Remove the existing qtpyvcp directory: Before you can clone the repository again, you need to remove the existing directory. You can do this with the rm command. Please be aware that this will delete the entire directory and all of its contents:
    Code:
    rm -rf ~/LinuxCNC_Install/qtpyvcp

  2. Re-clone the qtpyvcp repository: Now that the directory has been removed, you can clone the repository again:
    Code:
    cd ~/LinuxCNC_Install
    git clone https://github.com/kcjengr/qtpyvcp


  3. Check for the presence of setup.py: The error message suggests that a setup.py file is missing from the repository. You should check to see if this file is present:
    Code:
    cd qtpyvcp
    ls
    If the setup.py file is present, you can attempt to install the package again. If it is not present, this suggests that the repository has been restructured or the installation process has changed. In this case, you should refer to the latest installation instructions for qtpyvcp.

  4. Consider using poetry for installation: The presence of a pyproject.toml file suggests that the repository might use poetry for dependency management and package installation. If a setup.py file is not present, try installing poetry and using it to install the package:
    Code:
    pip install poetry
    poetry install
Regarding the issues with MX21 and Debian, while MX Linux is based on Debian, different distributions can package different versions of software, including Python and its libraries. It's possible that the version of Python or the libraries included in MX21 is not compatible with probe_basic. If the maintainers recommend using Debian 11, this might be the simplest route to get everything working.
 
Update to all and future readers.

issue solved. Debian 12 aka Bookworm is running my machine perfectly fine and also Linux CNC with Probe Basic installed.

If you are having issues with your machine and are trying to use it for Linux CNC and Probe Basic, give Debian 12 a try.

Here is the link, I selected amd64 for my machine.


Thank you all for the kind help! You rock.

I am having lots of fun with this OS and look forward to my cnc machine project.
 

Staff online

Members online


Top