# FreeBSD Package building logs and errors

FreeBSD maintains a build farm (the "pointyhat cluster") that is used to build all packages across all architectures and all major releases. This page contains the build logs and errors for all the ports built by the pointyhat cluster. (Note: all of the "Current run" links are possibly in progress and may be partial, so keep that in mind if there appear to be some missing.)

Port cross-reference summaries on portsmon.FreeBSD.org
  Build errors by portname; by portname vs. build environment; by error type vs. build environment
  Problem Reports for existing ports; for new ports; for the ports framework; for repocopies requested; for unknown
  Build Errors and Problem Reports by portname; for one maintainer; for broken ports; for deprecated ports; for forbidden ports
  Everything about one port
  The complete list of all reports
New build failures (check here to find the most recent error log from your port)
  New build failures on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  New build failures on 6.x-stable [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  New build failures on 7.x-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  New build failures on 8.x-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  New build failures on 5.x-stable with experimental port patches [i386 ()]
  New build failures on 6.x-stable with experimental port patches [amd64 ()] [i386 ()]
  New build failures on 7.x-current with experimental port patches [amd64 ()] [i386 ()]
Error logs
  By maintainer
  Last full run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  Current run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  Last full run on 6.x-stable [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Current run on 6.x-stable [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Last full run on 7.x-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Current run on 7.x-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Last full run on 8.x-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Current run on 8.x-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Last full run on 5.x-stable with experimental port patches [i386 ()]
  Current run on 5.x-stable with experimental port patches [i386 ()]
  Last full run on 6.x-stable with experimental port patches [amd64 ()] [i386 ()]
  Current run on 6.x-stable with experimental port patches [amd64 ()] [i386 ()]
  Last full run on 7.x-current with experimental port patches [amd64 ()] [i386 ()]
  Current run on 7.x-current with experimental port patches [amd64 ()] [i386 ()]
Build logs (errors and otherwise)
  Last full run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  Current run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  Last full run on 6.x-stable [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
  Current run on 6.x-stable [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
  Last full run on 7.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
  Current run on 7.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
  Last full run on 8.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
  Current run on 8.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
  Last full run on 5.x-stable with experimental port patches [i386 ()]
  Current run on 5.x-stable with experimental port patches [i386 ()]
  Last full run on 6.x-stable with experimental port patches [i386 ()]
  Current run on 6.x-stable with experimental port patches [i386 ()]
  Last full run on 7.x-current with experimental port patches [amd64 ()] [i386 ()]
  Current run on 7.x-current with experimental port patches [amd64 ()] [i386 ()]
)] [sparc64 ()] [amd64 ()] [ia64 (< !--#flastmod file="ia64-5-full-logs/extras.html" -- >)]
Current run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()] [ia64 (< !--#flastmod file="ia64-5-latest-logs/extras.html" -- >)]
Last full run on 6.x-stable [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
Current run on 6.x-stable [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
Last full run on 7.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()] Current run on 7.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
Last full run on 8.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()] Current run on 8.x-current [i386 ()] [sparc64 ()] [amd64 ()] [ia64 ()]
--!> )]
Ports that build on 5.x-stable but not on 4.x-stable [i386 ()]
Ports that build on 4.x-stable but not on 5.x-stable (last full run) [i386 ()]
Ports that build on 4.x-stable but not on 5.x-stable [i386 ()]
Ports that fail on all of "4.x-stable 5.x-stable" (last full run) [i386 ()]
Ports that fail on all of "4.x-stable 5.x-stable" [i386 ()]
Ports that fail in the experimental port rebuild but not in the regular port rebuild [i386 ()]
Ports that fail in the experimental port rebuild but not in the regular port rebuild [i386 ()]
-->
Packages
  )]
  Packages from latest run on 4.x-stable [i386 ()]
  Packages from last full run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  --> Packages from latest run on 5.x-stable [i386 ()] [sparc64 ()] [amd64 ()]
  )] [sparc64 ()] [ia64 ()] [amd64 ()]
  --> Packages from latest run on 6-stable [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  )] [sparc64 ()] [ia64 ()] [amd64 ()]
  --> Packages from latest run on 7-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  )] [sparc64 ()] [ia64 ()] [amd64 ()]
  --> Packages from latest run on 8-current [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  Package building statistics (current state of all package builds)
Archive
  All error logs [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]
  All portbuild logs [i386 ()] [sparc64 ()] [ia64 ()] [amd64 ()]

### Additional information

None of the ports marked `IS_INTERACTIVE` or `NO_PACKAGE` are built any more -- if you have ports that fall into those categories, assume their packages or distfiles will never show up in ftp sites or CDROMs. `RESTRICTED` packages are built and deleted (using "`make clean-restricted-list`"). `NO_CDROM` packages are built but deleted (using "`make clean-cdrom-list`") before being put on a CDROM.

Notes on the building process:

- Every port is built in its own chroot environment ( tarball for 5.x-stable |tarball for 6.x-stable |tarball for 7.x-current |tarball for 8.x-current ), starting with an empty `/usr/local` and `/usr/X11R6`. The dependencies are installed as packages just before the build. You can see the list of dependencies on the third line of the log -- the "foo.tgz bar.tgz" stuff are the dependencies. To make sure that these actually work, `DEPENDS_TARGET` is set to "/usr/bin/true"; if you see "/usr/bin/true is up to date" or some such, that means there is something wrong with the dependency lines or the packages this port is depending on.
- The build is done on a shared (read-only) `/usr/ports` with `WRKDIRPREFIX` set to `/work`. If your `WRKSRC` looks funny, that's probably why.
- `MASTER_SITE_OVERRIDE` is pointing to pointyhat's distfile dir, and `MASTER_SITE_BACKUP` is pointing to ftp-master.freebsd.org or a local mirror. Please pay attention to Bill Fenner's distfile checker for that.
- The ports are built on machines that are mostly running 7.x-CURRENT, with some 6.x-STABLE machines. If your port depends on the result of uname(3) or sysctl to determine the running version of FreeBSD, change it to use uname(1) instead (the builds use a dummy uname(1) that reports the target version of FreeBSD), or change it to use the value of the OSVERSION variable that can be passed in from the port makefile.

### Types of errors detected

Here is an alphabetical list of current errors detected by the AI script. Note that this is all just a rough guess -- it is merely for your aid.

Key (applies only to the items below):

The most common errors.
Some less common errors.
Transient errors. These may not be your fault.

alignment
  You've managed to confuse the assembler with a misaligned structure.
apxs
  Your port depends on Apache (in particular, the `apxs` binary) but the `Makefile` doesn't have Apache in `BUILD_DEPENDS` and/or `LIB_DEPENDS`.
arch
  The port does not build on a particular architecture, due to assembler or linker errors. In some easy cases this is due to not picking up the various `ARCH` configuration variables in the Makefile; you'll see this via, e.g., a Sparc `make` failing while looking for an i386 subdirectory. For the 64-bit architectures, a common problem is the assumption many programmers make that pointers may be cast to and from 32-bit ints. In other cases the problems run much deeper, in which case `ONLY_FOR_ARCHS` may be needed.
assert
  Compilation failed due to an assert. This is often a variation on `arch` or `missing header`.
autoconf
  Your port depends on `autoconf`, but the `Makefile` either doesn't have `USE_AUTOCONF`, or does not use `USE_AUTOCONF_VER` correctly.
autoheader
  Your port depends on `autoheader`, but the `Makefile` cannot find it; set `USE_AUTOHEADER`.
automake
  Your port depends on `automake`, but the `Makefile` either doesn't have `USE_AUTOMAKE`, or does not use `USE_AUTOMAKE_VER` correctly.
bad C++ code
  There is a compiler error which is caused by something specific to C++.
compiler error
  There is a C compiler error which is caused by something other than e.g. "new compiler error".
CATEGORIES
  The `CATEGORIES` line in `Makefile` includes an invalid category.
cgi-bin
  Your port assumes that a directory (usually `/usr/local/www/cgi-bin`) already exists, but by default it doesn't.
checksum
  The checksum of one or more of the files is incorrect.
chown
  `POSIX` has deprecated the usage "`chown user.group filename`" in favor of "`chown user:group filename`". This happened quite some time ago, actually, but it is only now being enforced. (The change was made to allow '.' in usernames).
cluster
  There was some kind of error on the build cluster. It is not your fault.
compat6x
  This port needs to depend on a port `misc/compat6x` on `-CURRENT`.
configure error
  The port's `configure` script produced some kind of error.
coredump
  Some process in the build chain dropped core. While your port may indeed be faulty, the process that dropped core should also be fixed.
depend object
  The port is trying to reinstall a dependency that already exists. This is usually caused by the first field of a `*_DEPENDS` line (the `obj` of `obj:dir[:target]`) indicating a file that is not installed by the dependency, causing it to be rebuilt even though it has already been added from a package.
depend package
  There was an error during adding dependencies from packages. It is the fault of the package being added, not this port.
disk full
  The disk filled up on the build system. It is not your fault.
DISPLAY
  This port requires an X display to build. There is nothing you can do about it unless you can somehow make it not require an X connection.
distinfo update
  The contents of `distinfo` does not match the list of distfiles or patchfiles.
fetch
  One or more of the files could not be fetched.
fetch timeout
  Your fetch process was killed because it took too long. (More accurately, it did not produce any output for a long time.) Please put sites with better connectivity near the beginning of `MASTER_SITES`.
forbidden
  Someone has marked this port as "forbidden", almost always due to security concerns. See the logfile for more information.
gcc bug
  You have tickled a bug in gcc itself. See the GNU bug report documentation for further information.
gcc4
  Your code does not run with the latest gcc version See the wiki page for further information.
install error
  There was an error during installation.
LIB_DEPENDS
  The `LIB_DEPENDS` line specifies a library name incorrectly. This often happens when a port is upgraded and the shared library version number changes.
linker error
  There is a linker error which is caused by something other than those flagged elsewhere.
makefile
  There is an error in the `Makefile`, possibly in the default targets.
manpage
  There is a manpage listed in a `MAN?` macro that does not exist or is not installed in the right place.
missing header
  There is a missing header file. This is usually caused by either (1) a missing dependency, or (2) specifying an incorrect location with `-I` in the compiler command line.
mtree
  The port leaves `${PREFIX}` in a state that is not consistent with the mtree definition after `pkg_delete`. This usually means some files are missing from `PLIST`. It could also mean that your installation scripts create files or directories not properly deleted by the deinstallation scripts. Another possibility is that your port is deleting some directories it is not supposed to, or incorrectly modifying some directory's permission.
new compiler error
  gcc (2.95.x or above) does not like the source code. This is usually due to stricter C++ type checking or changes in register allocation policy.
NFS
  There was either a temporary NFS error on the build system (which is not your fault), or the `WRKSRC` is invalid (which is your fault).
patch
  One or more of the patches failed.
perl
  `perl` is no longer included by default in the base system, but your port's configuration process depends on it. While this change helps avoid having a stale version of `perl` in the base system, it also means that many ports now need to include `USE_PERL5`.
perl5
  There is a problem in processing a `perl5` module.
PLIST
  There is a missing item in the `PLIST`. Note that this is often caused by an earlier error that went undetected. In this case, you should fix the error and also the build process so it will fail upon an error instead of continuing, since that makes debugging that much harder.
process failed
  The `make` process terminated unexpectedly, due to something like a signal 11 or bus error.
python
  The `Makefile` needs to define `USE_PYTHON`.
runaway process
  Your `make package` process was killed because it took too long. (More accurately, it did not produce any output for a long time.) It is probably because there is a process spinning in an infinite loop. Please check the log to determine the exact cause of the problem.
segfault
  Some process in the build chain got a segmentation fault.
stdio
  You need to bring your port up to date with the current `<stdio.h>`.
stl
  Your port requires the `STL` library but cannot find it.
struct changes
  Your port is trying to refer to structure elements that are not really there. This is often due to changes in the underlying include files.
sysvipc
  Your port is interacting badly with the System V InterProcess Communication code.
threads
  There is a linker error which is caused by failing to find one of the thread libraries.
USE_XLIB
  You should specify `USE_XLIB` for this port since it appears to use X.
varargs
  `varargs.h` is obsolete with newer versions of `gcc`.
WRKDIR
  The port is attempting to change something outside `${WRKDIR}`. See handbook for details.
??? (unknown)
  The automated script cannot even guess what is wrong with your port. `portmgr` tries to keep the `processonelog` script reasonably efficient while covering as many errors as possible, but many errors are not common enough to try to catch.

Here is an alphabetical list of obsolete errors that used to be detected by the AI script, but are now uncommon enough to be skipped:

awk
  `awk` is complaining about some kind of bogus string expression.
bison
  Your port requires `bison`, which does not exist in 4.x-stable or newer anymore. Either patch it to use `byacc` instead, or define `USE_BISON`.
ELF
  The port does not properly work in the new ELF world. It is probably looking for an `a.out` object (e.g., `crt0.o`).
ffs conflict
  Both `/usr/include/machine/cpufunc.h` and `/usr/include/strings.h` are attempting to define `int ffs()`.
getopt.h
  `<getopt.h>` is conflicting with `unistd.h`.
getopt
  Your port may need to set the new port variable `USE_GETOPT_LONG`.
libc_r not found
  This library has not yet been ported to e.g. the Sparc.
malloc.h
  Including `<malloc.h>` is now deprecated in favor of `<stdlib.h>`.
MOTIF
  This port requires Motif but does not define `REQUIRES_MOTIF`. See the handbook for details.
MOTIFLIB
  This port requires Motif but does not refer to the libraries using `${MOTIFLIB}`. See handbook for details.
munmap
  POSIX specifies that munmap cannot be called on a zero-length file. Because of this, during 4.X builds, if cp tries to copy a zero-length file, it may fail saying, "cp: ...: Invalid argument". This is a problem with the bindist image on pointyhat, and not the fault of the porter.
pod2man
  `perl` is no longer included by default in the base system, but your port's documentation process depends on it. While this change helps avoid having a stale version of `perl` in the base system, it also means that many ports now need to include `USE_PERL5`.
sed
  `sed` is complaining about some kind of bogus regular expression, probably as a side-effect of its being invoked by `${REINPLACE_COMMAND}`. This is often a result of having replaced usages of `perl` in the `Makefile` with usages of `${REINPLACE_COMMAND}` but having left `perl`-specific regexps in place.
soundcard.h
  `machine/soundcard.h` has been moved.
values.h
  `values.h` has been moved.
texinfo
  The new `makeinfo` cannot process a texinfo source file. You can probably add a "--`no-validate`" option to force it through if you are sure it's correct regardless of what `makeinfo` says.
union wait
  The compiler could not calculate the storage size of an object, often due to misuse of a union.
X manpage
  This port does not install a manpage but `imake` rules are generating commands to convert manpages to HTML format. This is most likely fixed by changing `ComplexProgramTarget()` in `Imakefile` to `ComplexProgramTargetNoMan()`. Note that defining `NO_INSTALL_MANPAGES` in the `Makefile` is no longer sufficient in XFree86-4.

The ports page | Maintained by portmgr@FreeBSD.org | Last modified
$FreeBSD: ports/Tools/portbuild/errorlogs/index.shtml,v 1.2 2007/10/15 00:40:38 linimon Exp $