package creation failure

Charles Musser cmusser at sonic.net
Mon Sep 28 18:37:33 PDT 2015


I've written a small program on a DragonFly system and I'd like
to learn how to package it and submit it to the DPorts
system. Alas, my attempt at creating a port is failing at the
package creation step.

Following the Porter Handbook on the FreeBSD site and the
DragonFly DPorts wiki page, I did this:

- Make a clean source tarball available on a website for download

- Created a port in a subdirectory of /usr/dports/dns, with a
  Makefile, pkg-plist and pkg-descr.

- Put the source tarball in /usr/distfiles, so that "make
  makesum" in my new port directory generates distinfo.

- Finally, in my new subdirectory, "make package". Here's what
  happens:

===> Fetching all distfiles required by rdnssd-1.0.0 for building
===>  Extracting for rdnssd-1.0.0
=> SHA256 Checksum OK for rdnssd-1.0.0.tar.gz.
===>  Patching for rdnssd-1.0.0
===>  Configuring for rdnssd-1.0.0
===>  Building for rdnssd-1.0.0
--- rdnssd ---
gcc  -g  rdnssd.c  -o rdnssd
===>  Staging for rdnssd-1.0.0
===>   Generating temporary packing list
/usr/bin/install -C -o root -g wheel rdnssd /usr/local/bin/
====> Compressing man pages (compress-man)
===>  Building package for rdnssd-1.0.0
pkg-static: Unable to access file /usr/obj/dports/dns/rdnssd/work/stage/usr/local/bin/rdnssd: No such file or directory
*** Error code 1

Stop.
make: stopped in /usr/dports/dns/rdnssd

Oops. /usr/obj/dports/dns/rdnssd/work/stage/usr/local/bin is
indeed empty. I have a feeling that the install target in my
source Makefile needs to be different. Currently it's this:

install: rdnssd
	/usr/bin/install -C -o root -g wheel rdnssd ${PREFIX}/bin/

Is this the problem, or are there other things I'm not doing
right?

Thanks,

Chuck






More information about the Users mailing list