Upgraded from 13.x release to 14.4 and now I can't use the ports tree?

0 views
Skip to first unread message

Kaya Saman

unread,
May 26, 2026, 1:44:29 AM (3 days ago) May 26
to freebsd-...@freebsd.org
Hi,


I've just gone through the upgrade procedure described here:


https://docs.freebsd.org/en/books/handbook/cutting-edge/


and updated to 14.4 from 13.5 (I think was the latest release version?),
uname output: 14.4-RELEASE-p3 FreeBSD 14.4-RELEASE-p3 GENERIC amd64


When I try to build ports now, this is what I keep getting:


===>>> Creating a backup package for old version portmaster-3.35
Creating package for portmaster-3.35
pkg-static: file '/usr/local/share/licenses/portmaster-3.35/BSD2CLAUSE'
is missing
pkg-static: package creation failed

===>>> Package creation failed for portmaster-3.35!

===>>> Ignore this error  [i]
===>>> Abort update       [a]
===>>> Retry              [r]

===>>> How would you like to proceed? [i]

No packages matched for pattern 'portmaster-3.35'

Checking integrity... done (0 conflicting)
1 packages requested for removal: 0 locked, 1 missing

===>  Installing for portmaster-3.35
===>  Checking if portmaster is already installed
===>   portmaster-3.35 is already installed
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of portmaster
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Stop.
make[1]: stopped making
"/usr/ports/ports-mgmt/portmaster/work/.install_done.portmaster._usr_local"
in /usr/ports/ports-mgmt/portmaster
*** Error code 1

Stop.
make: stopped making "install" in /usr/ports/ports-mgmt/portmaster

===>>> A backup package for portmaster-3.35 should
       be located in /usr/ports/packages/portmaster-backup

===>>> Installation of portmaster-3.35 (ports-mgmt/portmaster) failed
===>>> Aborting update


===>>> You can restart from the point of failure with this command line:
       portmaster <flags> ports-mgmt/portmaster

This command has been saved to ~/portmasterfail.txt



For some reason I'm unable to use either portmaster or even the standard
'make' command under any of the ports eg:


:/usr/ports/ports-mgmt/portmaster # make deinstall; make install clean
===>  Deinstalling for portmaster
===>   Deinstalling portmaster-3.35
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0
packages in the universe):

Installed packages to be REMOVED:
    portmaster: 3.33

Number of packages to be removed: 1
[1/1] Deinstalling portmaster-3.33...
[1/1] Deleting files for portmaster-3.33: 100%
===>  Installing for portmaster-3.35
===>  Checking if portmaster is already installed
===>   portmaster-3.35 is already installed
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of portmaster
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Stop.
make[1]: stopped making
"/usr/ports/ports-mgmt/portmaster/work/.install_done.portmaster._usr_local"
in /usr/ports/ports-mgmt/portmaster
*** Error code 1

Stop.
make: stopped making "install clean" in /usr/ports/ports-mgmt/portmaster


There's a mismatch somewhere but what's going on?


Do I need to update the ports tree? It seems there is no more "portsnap"
command so should I clean out /usr/ports completely then use the git
version described here:


https://docs.freebsd.org/en/books/handbook/ports/


I guess this would be needed: # git clone --depth 1
https://git.FreeBSD.org/ports.git /usr/ports ?


Regards,


Kaya


Edward Sanford Sutton, III

unread,
May 26, 2026, 3:30:48 PM (2 days ago) May 26
to ques...@freebsd.org
The ports tree, and therefore portmaster, perform installs and
uninstalls by running pkg. Running `pkg query %v portmaster` should
display what is says is currently the installed version number. If it is
installed according to pkg, then `pkg delete portmaster` should be the
correct action to remove it. `pkg info` outputs all installed packages
with version on the package name and comment beside it if you want to
manually review your full list.
I'm not sure what would have brought it to a state of always removing
pkg 3.33 when the ports tree and/or portmaster says it is uninstalling
3.35 before that. I'd guess just an output bug where they assume its the
same version but that is misleading if that is happening and deserves a
bug report; better to display no version number on a stage's output if
the output is going to not match the command.

> Do I need to update the ports tree? It seems there is no more "portsnap"
> command so should I clean out /usr/ports completely then use the git
> version described here:

You should decide if there is anything in there that you want backed
up first: distfiles will only be used by a port calling for them and
generally require size and checksum match to be used so should be safe
to keep and will save download time/bandwidth. Work directories of many
ports get a versioned folder inside of it but the ports tree
instructions don't check that what already exists is correct; in any
case I'd let them all go if builds are giving you trouble (just as 'make
clean' would have done in a port's folder).

> https://docs.freebsd.org/en/books/handbook/ports/
>
>
> I guess this would be needed: # git clone --depth 1 https://
> git.FreeBSD.org/ports.git /usr/ports ?

I don't use '--depth 1' when I use git but seeing that discussed
seems vaguely familiar. As I do want git history to be accurate and
complete and I do make changes to the ports tree and with the intention
of submitting patches I create it without that part. I migrated when use
of git was still fairly new and I didn't reread that whole document but
I recall I had /usr/ports as its own ZFS dataset and git gave me grief
in trying to clone to that location, probably caused by the existence of
/usr/ports/.zfs but I forget). I think there is another flag that
suppresses such complaint but I think I cloned it to another location
that was a normal directory and moved its contents including hidden
content to /usr/ports. Git maintains its own data (only?) in
/usr/ports/.git so that must be transferred too if moving the clone.

> Regards,
>
>
> Kaya

Maku Bex

unread,
May 26, 2026, 4:23:56 PM (2 days ago) May 26
to Edward Sanford Sutton, III, ques...@freebsd.org
You ran the commands under '/usr/ports' instead of '/usr/ports/ports-mgmt/portmaster'. You need to `cd` to the port name's folder then run the commands. In your case:

# cd /usr/ports/ports-mgmt/portmaster
# make check-plist && make stage-qa

Kaya Saman

unread,
May 26, 2026, 9:24:32 PM (2 days ago) May 26
to ques...@freebsd.org

Hi,


On 5/26/26 9:23 PM, Maku Bex wrote:
You ran the commands under '/usr/ports' instead of '/usr/ports/ports-mgmt/portmaster'. You need to `cd` to the port name's folder then run the commands. In your case:

# cd /usr/ports/ports-mgmt/portmaster
# make check-plist && make stage-qa


Sorry I think I just blindly followed instructions or misunderstood as I had been awake for a little too long.


Some good news, after removing and re-fetching the ports tree, I was able to rebuild Portmaster through using the standard "make" command and portmaster itself.


At the moment, I've just done a: portmaster -adyf --no-confirm


hopefully if the @ports system has stabilized now it should be able to complete the build of Perl which it got stuck on. Currently it's on 9 out of 828 ports, so maybe in a few hours once it gets to say port 11 or something where Perl gets rebuilt I should know.


The machine is only a quad core Xeon so this will take some time but hopefully now it will build?


I'll keep everyone posted :-)


Regards,


Kaya

Kaya Saman

unread,
May 27, 2026, 12:55:38 AM (yesterday) May 27
to ques...@freebsd.org

Ok so unfortunately this thing bummed out on zstd now:


===>  Installing for zstd-1.5.7_2
===>  Checking if zstd is already installed
===>   An older version of zstd is already installed (zstd-1.5.7_1)


      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.

      If you really wish to overwrite the old port of zstd


      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Stop.

make[1]: stopped making "/usr/ports/archivers/zstd/work/.install_done.zstd._usr_local" in /usr/ports/archivers/zstd


*** Error code 1

Stop.

make: stopped making "install" in /usr/ports/archivers/zstd


#pkg info |grep zstd
zstd-1.5.7_1                   Fast real-time compression algorith


# make deinstall; make install clean

===>  Deinstalling for zstd
===>   Deinstalling zstd-1.5.7_1
No packages matched for pattern 'zstd'



Checking integrity... done (0 conflicting)
1 packages requested for removal: 0 locked, 1 missing

*** Error code 1

Stop.

make: stopped making "deinstall" in /usr/ports/archivers/zstd
===>  Installing for zstd-1.5.7_2
===>  Checking if zstd is already installed
===>   An older version of zstd is already installed (zstd-1.5.7_1)


      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.

      If you really wish to overwrite the old port of zstd


      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Stop.

make[1]: stopped making "/usr/ports/archivers/zstd/work/.install_done.zstd._usr_local" in /usr/ports/archivers/zstd


*** Error code 1

Stop.

make: stopped making "install clean" in /usr/ports/archivers/zstd


So make check-plist shows:


/usr/ports/archivers/zstd # make check-plist
====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
===> Checking for items in pkg-plist which are not in STAGEDIR
===> No pkg-plist issues found (check-plist)


/usr/ports/archivers/zstd # make stage-qa
====> Running Q/A tests (stage-qa)
/!\ To run stage-qa automatically add DEVELOPER=yes to your environment /!\


So added to /etc/make.conf and now:


/usr/ports/archivers/zstd # make stage-qa
====> Running Q/A tests (stage-qa


That's all I get??


Regards,


Kaya

Kaya Saman

unread,
May 27, 2026, 1:36:42 AM (yesterday) May 27
to ques...@freebsd.org

One more bit of info....


I ran: portmaster -d zstd which built fine but then said the port wasn't installed and still could not install it??


so under archivers/zstd running: make install clean


====> Compressing man pages (compress-man)


====> Running Q/A tests (stage-qa)

===>  Installing for zstd-1.5.7_2
===>  Checking if zstd is already installed

===>   Registering installation for zstd-1.5.7_2


*** Error code 1

Stop.
make[1]: stopped making "/usr/ports/archivers/zstd/work/.install_done.zstd._usr_local" in /usr/ports/archivers/zstd
*** Error code 1

Stop.
make: stopped making "install clean" in /usr/ports/archivers/zstd


and no package installed either?


# pkg info |grep zstd

Kaya Saman

unread,
May 27, 2026, 1:52:06 AM (yesterday) May 27
to ques...@freebsd.org

Aha!!


Narrowed it down to the `pkg bootstrap -f` 


I did run this multiple times so I have no idea what's going on.....  


This was the clue: https://forums.freebsd.org/threads/solved-all-ports-seem-to-fail-at-registering-installation.47434/


/usr/ports/archivers/zstd # make reinstall
===>  Deinstalling for zstd
pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible
pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible
===>   Deinstalling zstd-1.5.7_2
pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible
Updating database digests format: 100%


Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:

    zstd: 1.5.7_2



Number of packages to be removed: 1

The operation will free 3 MiB.
[1/1] Deinstalling zstd-1.5.7_2...
[1/1] Deleting files for zstd-1.5.7_2: 100%


===>  Installing for zstd-1.5.7_2
===>  Checking if zstd is already installed

pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible
pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible
pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible


===>   Registering installation for zstd-1.5.7_2

pkg-static: warning: database version 39 is newer than libpkg(3) version 38, but still compatible
Installing zstd-1.5.7_2...


No idea?


Gona attempt a: `portmaster -adfy --no-confirm` again and see if it will run through. Just wondering if when it rebuilds the `pkg` port the same thing will happen again?

Reply all
Reply to author
Forward
0 new messages