On Friday, January 28, 2022 5:34:34 AM EST Steffen Möller wrote:
> On 28.01.22 02:15, gene heskett wrote:
> > On Thursday, January 27, 2022 7:17:10 PM EST Steffen Möller wrote:
> >> On 28.01.22 00:31, gene heskett wrote:
> >>> On Thursday, January 27, 2022 2:22:43 PM EST Steffen Möller wrote:
> >>>> On 27.01.22 20:03, gene heskett wrote:
> >>>>> On Thursday, January 27, 2022 9:54:54 AM EST Steffen Möller 
wrote:
> >>>>>> Fresh start!
> >>>>>> 
> >>>>>> Dear Gene,
> >>>>>> 
> >>>>>> I would like to catch the problem before you start building and
> >>>>>> also
> >>>>>> exclude the possibility that somehow the code base of yours is
> >>>>>> affected by your previous checkout - just because I cannot
> >>>>>> inspect
> >>>>>> your machine from here. Once that was successful, yes, then this
> >>>>>> can be optimized.
> >>>>>> 
> >>>>>> First thing is that the system needs to be truly updated,
> >>>>>> nothing
> >>>>>> half-ish.
> >>>>> 
> >>>>> Remember Steffen, that this sd card was A, new, and b, written
> >>>>> with
> >>>>> dd
> >>>>> using 2021-10-30-raspios-bullseye-armhf-full.img,
> >>>>> 
> >>>>> sd card then put in the pi and booted, after I had fixed the no
> >>>>> network problem by filling in the defaults for a static network
> >>>>> by
> >>>>> putting my hosts file over the default, editing /etc/hostname to
> >>>>> be
> >>>>> the same as the buster install it would replace, and filling in
> >>>>> and
> >>>>> uncommenting the bottom of its /etc/dhcpcd.conf file to match the
> >>>>> buster net config. It was then booted, I assigned the country,
> >>>>> keyboard and other first boot things in raspi-config. rebooted,
> >>>>> at
> >>>>> which point it ran the update/ upgrade stuff bringing it up to
> >>>>> date
> >>>>> by upgrading 129 pkgs then.  The apt update/apt upgrade -y has
> >>>>> been
> >>>>> done several more times, and just now replaced 5 python pkgs.
> >>>>> 
> >>>>> sudo apt dist-upgrade just returned:
> >>>>> =============================
> >>>>> pi@rpi4:/media/pi/workspace $ sudo apt dist-upgrade -y
> >>>>> Reading package lists... Done
> >>>>> Building dependency tree... Done
> >>>>> Reading state information... Done
> >>>>> Calculating upgrade... Done
> >>>>> The following packages were automatically installed and are no
> >>>>> longer
> >>>>> 
> >>>>> required:
> >>>>>      dctrl-tools dkms libfuse2 libxtables-dev
> >>>>>      raspberrypi-kernel-headers
> >>>>> 
> >>>>> Use 'sudo apt autoremove' to remove them.
> >>>>> 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
> >>>>> =============================
> >>>>> So it is, ANAICT, a fully uptodate bullseye install.
> >>>>> 
> >>>>> In the middle of that, I mounted the drive I had built a
> >>>>> 5.16.2-rt19
> >>>>> kernel on and installed that, so a uname -a now returns:
> >>>>> ===========================
> >>>>> Linux rpi4 5.16.2-rt19-rt19-v7l+ #3 SMP PREEMPT_RT Tue Jan 25
> >>>>> 01:14:16
> >>>>> EST 2022 armv7l GNU/Linux
> >>>>> ===========================
> >>>>> Almost as bleeding edge as has been announced on the linux-rt
> >>>>> list.
> >>>>> I have since ran the first of my scripts to build master, then
> >>>>> scanned
> >>>>> the output for missing dependency's, installing those I spot in
> >>>>> the
> >>>>> back trace.
> >>>>> 
> >>>>> I have not adjusted anything in the config, or debian directories
> >>>>> of
> >>>>> this git clone which is of the raspberry/linux. I have been doing
> >>>>> this build since jessie days so I'm not new to this. At one point
> >>>>> pi
> >>>>> stuff was being built on an odroid C2 at the buildbot, but
> >>>>> crashed
> >>>>> several times a week and has been replaced with an rpi4 I
> >>>>> believe,
> >>>>> same as this one.
> >>>>> 
> >>>>> I faintly recall having to do something for buster but at 87 yo I
> >>>>> do
> >>>>> not recall what it was I had to do back then. And I have not
> >>>>> noted
> >>>>> the build your own recipe in our wiki as having been updated
> >>>>> since
> >>>>> wheezy, so it is, shall we say, a bit long in the tooth in 2022.
> >>>>> :)
> >>>>> 
> >>>>> And the next missing dependency is "convert", and its a
> >>>>> showstopper
> >>>>> for configure.
> >>>> 
> >>>> I was not aware of "convert". You have done everything just fine.
> >>>> 
> >>>>>> Please do
> >>>>>> 
> >>>>>> sudo apt update
> >>>>> 
> >>>>> that showed 5 pkgs could be upgraded which I did.
> >>>>> 
> >>>>>> sudo apt -u dist-upgrade
> >>>>> 
> >>>>> see above
> >>>>> 
> >>>>>> Anything surprising/weird/many packages listed? Then please tell
> >>>>>> me
> >>>>>> or
> >>>>>> continue with "yes".
> >>>>>> 
> >>>>>> Wherever you have the disk space please then do a
> >>>>> 
> >>>>> I have the space, its a 240gig SSD
> >>>>> 
> >>>>>> git clone https://github.com/LinuxCNC/linuxcnc.git
> >>>>>> bullseye-linuxcnc
> >>>>> 
> >>>>> Will take an hour or more, my net connection is leisurely.
> >>>>> 
> >>>>>> cd new-dir-name
> >>>>>> 
> >>>>>> python3 --version # should be more recent than 3.7
> >>>>> 
> >>>>> pi@rpi4:/media/pi/workspace $ python3 --version
> >>>>> Python 3.9.2
> >>>>> 
> >>>>>> Please ping me again once you got to this stage.
> >>>>> 
> >>>>> And configure still bails out:
> >>>>>     checking for convert... none
> >>>>> 
> >>>>> configure: error: no convert, documentation cannot be built
> >>>> 
> >>>> You are two steps ahead :) I presume you ran
> >>>> 
> >>>> debian/configure
> >>>> 
> >>>> but just do it again, please, so I know what was done. The
> >>>> "uspace"
> >>>> argument is the default, so just run as shown above.
> >>>> 
> >>>> We now have the debian/control file. This debian/control file
> >>>> declares
> >>>> the packages that are required to run the package, but especially
> >>>> also
> >>>> the packages that are required to build the package.
> >>>> 
> >>>> Now run
> >>>> 
> >>>> dpkg-buildpackage
> >>>> 
> >>>> and it will check that debian/control file to see if all packages
> >>>> are
> >>>> indeed installed that need to be installed to build the packages.
> >>>> 
> >>>> When you invoke this now then it will fail (so I hope) because the
> >>>> package "imagemagick" is missing which then also provides
> >>>> /usr/bin/convert. There are likely other packages, too, that
> >>>> configure
> >>>> would identify as missing if it was not already halting after
> >>>> checking
> >>>> for "convert". So, dpkg-buildpacakge will list all the packages
> >>>> that
> >>>> are missing. Please install those and then run dpkg-buildpackage
> >>>> again.
> >>>> 
> >>>> LinuxCNC has a bit of a problem with interrupted builds. There is
> >>>> a
> >>>> chance that dpkg-buildpackage fails because files existing that
> >>>> are
> >>>> not in the original tarball. But we will get to that - now it is
> >>>> me
> >>>> who is ahead of himself :)
> >>>> 
> >>>> Best,
> >>>> 
> >>>> Steffen
> >>> 
> >>> I installed imagemagick and all but one mesa util apt couldn't
> >>> find,
> >>> did a make clean
> >> 
> >> dpkg-buildpackage invokes a cleaning itself. This should not be
> >> required. In theory.
> >> 
> >>> and reran configure,
> > 
> > Hummm, my "maketoruntests.sh" may be running the wrong configuration:
> > =======================
> > cd /media/pi/workspace/bullseye-linuxcnc/
> > git checkout master
> > cd ./src
> > ./autogen.sh
> > ./configure --enable-build-documentation
> > sudo make clean
> > make -j4
> > sudo make setuid
> > source ../scripts/rip-environment
> > cd ..
> > cd ./src
> > runtests
> > =======================
> > 
> > I'll modify that to run debian/configure --enable-build-documentation
> 
> Please imagine that I sit here on the other side of the globe and try
> to understand where the error messages are coming from. If you now
> show me anything else than the commands I asked you to execute and
> their outputs then this is confusing me.
> 
> >> Which configure? The ./configure ?  Maybe this works. Maybe not.
> >> Configure takes options and for proper debian packages these need to
> >> be set properly :) It is not magic, how it is done you can inspect
> >> in the file debian/rules, which is derived from debian/rules.in by
> >> a call to debian/configure.
> >> 
> >> Please do a
> >> 
> >> git reset --hard
> > 
> > That seem to have put me on 2.8, not master?
> > pi@rpi4:/media/pi/workspace/bullseye-linuxcnc $ git reset --hard
> > HEAD is now at 65b209390 Merge remote-tracking branch 'origin/2.8'
> > 
> >> which should bring you back to pristine master branch. Please also
> >> do a
> >> 
> >> git status
> > 
> > pi@rpi4:/media/pi/workspace/bullseye-linuxcnc $ git status
> > On branch master
> > Your branch is up to date with 'origin/master'.
> > 
> > nothing to commit, working tree clean
> > 
> > Which is puzzling, shouldn't both report pretty close to the same
> > thing?
> The "reset --hard" cleaned everything. That is perfect.
> 
> >> and remove any files that are listed as not tracked (there should
> >> not
> >> be any, just to be sure).
> >> 
> >> Then start over with debian/configure (the debian one, not the one
> >> in
> >> your working directory, which should now no longer exist since it
> >> was
> >> generated). No need to directly invoke any configure or any make
> >> from
> >> here on. The file debian/rules is a Makefile itself and knows how to
> >> invoke the real Makefile. And that debian/rules file is invoked via
> >> dpkg-buildpackage.
> >> 
> >> So, after debian/configure please run dpkg-buildpackage again and
> >> this
> >> time it should complete. If not, well, then something is special on
> >> your RPi platform. We'll get there, eventually.
> >> 
> >> Best,
> >> Steffen
> > 
> > My script snippet
> 
> As I said. I am on the other side of the globe - my problem solving
> implies that you run my commands. You can run more to give more
> information but anything that writes to anything in that directory is a
> no-no.
> 
> What you are doing is that you have a configuration problem but are not
> running the configuration that is performed in debian/rules, which is
> executed by dpkg-buildpackage, which I had asked to run, and only
> that.
> 
> I suggest you try again with the commands I suggested.

I am doing both, and I've modified my script to run that config with a 
make clean between them, what I am reporting to you from here on will be 
from your commands, I will make my scripts compatible with yours except 
I'm actually building installable debs when my stuff works. I think I'm 
also using the buildpackage later but I build first for runinplace so I 
can run the test suite insitu, if that is 100% successful then I build 
the debs. runtests takes at least half an hour but its checking is worth 
it IMO.

> In the meantime,
> let me build the LinuxCNC packages myself for ARM64 on bullseye and I
> place them somewhere for you to download. I should have these by next
> week.
 
Not on arm64, Steffen but on armhf (v7l) please. The deeper stack frame 
on arm64 has a several microsecond negative effect on irq latency where 
lower is better. And we need every microsecond we can extract. armhf on 
an older 4.19 realtime preempt kernel I built, manages around 12 
microseconds, not great, but adequate where some intel stuff can do 4 u-
secs.

Because this bullseye has not yet allowed linuxcnc to be built, I haven't 
a clue what my 5.16-2-rt19 will do yet, but I expect it will beat the 
4.19 version by a couple microseconds where lower is better. arm64's 
latency I expect to be more than 20 microseconds which may make the 
system stutter and stall stepper motors. That can wreck parts AND break 
expensive tooling.

> Best,
> Steffen

This result however was with my script, which did get as far as runtests, 
with 137 out of 250 or so failing.

> > ran as usual until it ran into boost::python problems,
> > then 137 of the runtests failed, most blaming boost::python::this or
> > that.
> > 
> > Cheers Steffen, Gene Heskett.
> 
> _______________________________________________
> Emc-developers mailing list
> Emc-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-developers


Cheers, Gene Heskett.
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.
 - Louis D. Brandeis
Genes Web page <http://geneslinuxbox.net:6309/gene>





_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to