Updated tdom on one machine that had it installed but it failed to install for the first time on another machine?

Just installed the new updates (including AUR) and on a desktop that already had tdom installed it was updated fine; but on a laptop that did not have it installed, it failed to install it for the first time because of a rmdir error at the end of the piece of information below.

I realize that it is an AUR package and this forum does not support those but my question is, Would you please let me know if this error indicates it is a problem with the AUR package or an error of mine?

Thank you.

==> Entering fakeroot environment...
==> Starting package()...
Installing header files in /var/tmp/pamac-build-gary/tdom/pkg/tdom//usr/include
Installing documentation in /var/tmp/pamac-build-gary/tdom/pkg/tdom//usr/share/man
Installing ./generic/tdom.h
Installing ./doc/domDoc.n
Installing ./doc/dom.n
Installing ./doc/domNode.n
 /bin/sh ./tclconfig/install-sh -c  -m 644 libtcl9tdom0.9.5.so /var/tmp/pamac-build-gary/tdom/pkg/tdom///lib/tdom0.9.5/libtcl9tdom0.9.5.so
Installing ./doc/expatapi.n
Installing ./doc/expat.n
 /bin/sh ./tclconfig/install-sh -c  -m 644 libtdomstub.a /var/tmp/pamac-build-gary/tdom/pkg/tdom///lib/tdom0.9.5/libtdomstub.a
Installing ./doc/pullparser.n
Installing tdomConfig.sh to /var/tmp/pamac-build-gary/tdom/pkg/tdom///lib/
Installing ./doc/schema.n
Installing ./doc/tdomcmd.n
Installing tdom.tcl /var/tmp/pamac-build-gary/tdom/pkg/tdom///lib/tdom0.9.5/tdom.tcl
Installing ./doc/tnc.n
Installing pkgIndex.tcl /var/tmp/pamac-build-gary/tdom/pkg/tdom///lib/tdom0.9.5
rmdir: failed to remove '/var/tmp/pamac-build-gary/tdom/pkg/tdom/usr/bin': No such file or directory
==> ERROR: A failure occurred in package().
    Aborting...

Built it with makepkg - no problems.
Fetched the PKGBUILD from the AUR website:

AUR (en) - tdom

(top right: Package Actions → Download Snapshot)

tcl and gumbo-parser are the dependencies that need to be present for this.

It’s easier with yay - likewise no problems:
yay -S tdom

I don’t have pamac installed anymore and thus cannot try and test with that.
This AUR helper is sometimes unreliable …

One reason for your failure could be that Manjaro (pamac) doesn’t access the AUR directly (from what I understand)
but uses a copy of it - and this copy might not be current and the same as the one presently in AUR.

2 Likes

I just successfully built it using pamac’s command line:

Output of `pamac build tdom`
...
Installing ./doc/tdomcmd.n
Installing ./doc/tnc.n
Installing pkgIndex.tcl /var/tmp/pamac-build-scotty/tdom/pkg/tdom//usr/lib/tdom0.9.5
==> Tidying install...
  -> Removing libtool files...
  -> Purging unwanted files...
  -> Stripping unneeded symbols from binaries and libraries...
  -> Compressing man and info pages...
==> Checking for packaging issues...
==> Creating package "tdom"...
  -> Generating .PKGINFO file...
  -> Generating .BUILDINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: tdom 0.9.5-1 (Mon 05 May 2025 17:35:50)
==> Cleaning up...

Checking keyring...                                                                                              [1/1]
Checking integrity...                                                                                            [1/1]
Loading packages files...                                                                                        [1/1]
Checking file conflicts...                                                                                       [1/1]
Checking available disk space...                                                                                 [1/1]
Installing tdom (0.9.5-1)...                                                                                     [1/1]
Transaction successfully finished.

Sometimes I have found that, if an AUR package fails to build successfully, then removing any old build files & then re-attempting the build will fix the problem:

pamac clean --build-files

then

pamac build tdom
3 Likes

I tried @scotty65 suggestion first and the result was the same error.

Then tried @Nachlese suggestion (the yay version because don’t know how to install a package directly) and it failed with the following error which I think means that tcl9.0 is required; and the Manjaro repo. does not have it yet.

I forgot that this is the machine on which I tried to install tcl9.0 and critcl and tcllib2.0 but couldn’t get all three to work together and deleted them. Perhaps I messed something up along the way. Tcl8.6 still runs my scripts and now have tcllib 2.0 but not critcl.

Thank you.

==> Starting check()...
TCL_LIBRARY=`echo /home/gary/tcl9/library` LD_LIBRARY_PATH="/home/gary/.cache/yay/tdom/src/tdom-0.9.5-src:/usr/lib:" PATH="/home/gary/.cache/yay/tdom/src/tdom-0.9.5-src:/usr/lib:/home/gary/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl" TCLLIBPATH="/home/gary/.cache/yay/tdom/src/tdom-0.9.5-src" tclsh9.0 `echo ./tests/all.tcl` -constraints longRunning \
    -load "package ifneeded tdom 0.9.5 \
        [list load `echo libtcl9tdom0.9.5.so` [string totitle tdom]]"
/bin/sh: line 1: tclsh9.0: command not found
make: *** [Makefile:272: test] Error 127
==> ERROR: A failure occurred in check().
    Aborting...
 -> error making: tdom-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
tdom - exit status 4

No, that’s not what it means.

I had tcl installed already - on an otherwise fully up to date base system.
(the tcl from the standard repo - not something from AUR)

I ran yay -S tdom
and it built successfully.

I then explicitly installed the dependency: gumbo-parser - which was already there from the try with yay

I downloaded the PKGBUILD as I described - unpacked it, changed into the directory, ran makepkg - it again built successfully.

It dosn’t rely on a specific version of tcl
You seem to have version 9 installed in your $HOME - and have it first in your $PATH.
The “normal/repo” tcl is never used, it seems.

no - neither Manjaro nor Arch have tcl version 9 in their repos

Thank you. That must be something I messed up in trying to install tcl9.0. It installed but critcl kept using tcl8.6 and I couldn’t get it right and tried to delete it but must’ve overlooked some important items.

At CLI running tclsh, puts $tcl_version output is 8.6.

I need to find what other files/directories need cleaned.

according to your output above, the build process clearly finds and tries to use your 9 version in your $HOME :man_shrugging:

Have you checked your $PATH ?

I tried to figure out how to change TCL_LIBRARY but could not. I read that it is not an environment variable and it was not available in Tcl $::env(...).

So, I uninstalled all Tcl/Tk and items that depend on them and then reinstalled them.

After that tdom installed successfully.

I suppose that was the idiot’s approach but it appears to have worked.

I have a lot to learn about installing outside of the package manager using the PKGBUILD directly. It appeared to work for each individual piece of Tcl9.0, Tk9.0, critcl, and tcllib2.0 but I couldn’t get them to work together and failed to clean up properly. That must’ve changed where tcl_library points.

Thanks for the help.

Also,

Have you checked your $PATH ?

% puts $::env(PATH)
/home/gary/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

Is that an acceptable $PATH? Thanks.

Yes, but I notice that you don’t have /usr/lib/jvm/default/bin in there. Maybe it’s because of something I installed and you didn’t, but it seems odd. It’s needed for Java support.

The files in that directory come from the package java-environment-common from the repo, which itself is a dependency of jdk-openjdk.

Thank you for pointing that out. I have java-environment-common and java-runtime-common installed as dependencies not explicit; thus, there must be something installed that needs Java support but I don’t recall what that might be. I don’t code in Java.

It’s an optional dependency for several packages, including libreoffice-fresh and a couple of texlive packages.

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.