pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Errors building new package



Robert Nestor <rnestor%mac.com@localhost> writes:

The guide is probably not good enough.  However, to first order, all the
people that know how to fix it know how to build packages so they don't
notice the trouble.  So pointing out specific issues is very useful.

> Need some help/guidance here.  Trying to build a new package that
> doesn’t exist in pkgsrc or wip-pkg.  This is on an amd64 system
> running Generic 7.0.1.  I think I’ve followed the directions I found
> in the pkgsrc guide — installed url2pkg and pkglint.  Selected a
> category and created a new package sub-directory that I changed to.
> Then I ran url2pkg and supplied the URL of the source tar for the new
> package I’d like to get working under pkgsrc.  It built the basic
> Makefile and proceeded to download the source and run to completion
> where it displayed the message “Remember to correct CATEGORIES …”.  No
> errors up to this point.

You can look in work/ to see if it actually built.

> I then ran pkglint and it didn’t report any problems.  I followed this
> with a “bmake” and it displays a bunch of errors of “missing
> dependency operator” on blank lines and the COMMENT line.  I’ve made

There are two make programs in the world (plus others that no longer
matter):

  GNU make ('make' on Linux and Mac, and 'gmake' on BSD)
  BSD make ('make on BSD', and 'bmake' elsewhere)

The point is that for pkgsrc, you have to use BSD make.  If you are
using NetBSD 7, then just 'make is fine'.  If you want to send in a
patch to the guide to clarify, I can look at it.

What I would recommend is that you skim most of the guide about making
packages, and then read the Makefile that has been created.  url2pkg
helps speed things up a lot, but it doesn't 100% automatically work.

packages tend to have ".include ../../mk/blah" so if you have not put
your package in the pkgsrc tree is is unlikely to work.

A good place to work on packakges is in pkgsrc-wip.  That is a directory
that can be checked out (git) as a subdirectory of pkgsrc, and commit
access to pkgsrc-wip is readily available.  Then others can see what
you've done, help, and eventually migrate packages to pkgsrc proper.
  http://pkgsrc.org/wip/

Otherwise, if you put your pkg directory someplace others can look,
someone can skim it and give you quick commnts.

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index