0

FreeBSD 9.1 RC3

最初に明確にするために: トップレベルは /usr/ports にあり、カテゴリレベルは /usr/ports/devel にあります

カスタマイズされたポート ツリーに取り組んでいます。基本的には、元のポート ツリー全体を必要なものにトリムするだけです。そして、ほとんどの場合、GID、UID、Mk/、Tools/、Templates と同じです。Makefile に関しては、SUBDIR を必要なものに変更するだけです。

一般的な問題: /usr/ports/devel/protobuf で「make install clean」を実行するなど、個々のポートごとにすべてが機能します。しかし、カテゴリ レベルで「make install clean」を実行すると、問題が発生します。

実際の問題: usr/ports/devel で「make install clean -DBATCH」を実行します。

  ....
  Usage: ./help2man.h2m.PL [--quiet] [--stdout|--output=FILE] [--locale=STRING]    [--message-     
 dir=DIR]
 gmake[1]: *** [help2man.el.h2m] Error 255
 gmake[1]: Leaving directory `/usr/ports/misc/help2man/work/help2man-1.40.12'
 Option include requires an argument
 `help2man' generates a man page out of `--help' and `--version' output.

 Usage: help2man [OPTION]... EXECUTABLE

 -n, --name=STRING       description for the NAME paragraph
 -s, --section=SECTION   section number for manual page (1, 6, 8)
 -m, --manual=TEXT       name of manual (User Commands, ...)
 -S, --source=TEXT       source of program (FSF, Debian, ...)
 -L, --locale=STRING     select locale (default "C")
 -i, --include=FILE      include material from `FILE'
 -I, --opt-include=FILE  include material from `FILE' if it exists
 -o, --output=FILE       send output to `FILE'
 -p, --info-page=TEXT    name of Texinfo manual
 -N, --no-info           suppress pointer to Texinfo manual
 -l, --libtool           exclude the `lt-' from the program name
     --help              print this help, then exit
     --version           print version number, then exit

  EXECUTABLE should accept `--help' and `--version' options and produce output on
  stdout although alternatives may be specified using:

   -h, --help-option=STRING     help option string
   -v, --version-option=STRING  version option string
   --version-string=STRING      version string
   --no-discard-stderr          include stderr when parsing option output

  Report bugs to <bug-help2man@gnu.org>.
  gmake: *** [help2man.el.1] Error 255
  *** [do-build] Error code 1

  Stop in /usr/ports/misc/help2man.
  *** [/usr/ports/misc/help2man/work/.build_done.help2man._usr_local] Error code 1

  Stop in /usr/ports/misc/help2man.
  *** [build-depends] Error code 1

  Stop in /usr/ports/devel/autoconf.
  *** [/usr/ports/devel/autoconf/work/.configure_done.autoconf._usr_local] Error code 1

  Stop in /usr/ports/devel/autoconf.
  *** [build-depends] Error code 1

  Stop in /usr/ports/devel/automake.
  *** [/usr/ports/devel/automake/work/.configure_done.automake._usr_local] Error code 1

  Stop in /usr/ports/devel/automake.
  *** [build-depends] Error code 1

  Stop in /usr/ports/devel/apr1.
  *** [/usr/ports/devel/apr1/work/.configure_done.apr._usr_local] Error code 1

  Stop in /usr/ports/devel/apr1.
  *** [_apr1.realinstall] Error code 1

  Stop in /usr/ports/devel.

カスタマイズされたポート ツリーの構造

# ls
GIDs  Tools distfiles  net  xxxxxxxxxx  x11-fonts KNOBS  UIDs  doc   net-mgmt print  Makefile   bin   graphics   xxxxxxx security Makefile.inc converters   xxxx.sh  xxxxxxxxx  textproc Mk databases    lang        xxxxxxxxx   www Templates  devel    misc   xxxxxxxxxxxx    x11

 # ls devel
 autoconf-wrapper libevent   makedepend  py-asn1  py-setuptools automake  libltdl  p5-Locale-gettext py-asn1-modules swig13 Makefile  automake-wrapper libpthread-stubs pcre py-dateutil  zmq apr1  gettext libtool pkgconf py-protobuf autoconf    gmake  m4  protobuf py-pyzmq

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ports-using.htmlを参照

Note: You can build all the ports in a category or as a whole by running make in the top level directory, just like the aforementioned make fetch method. This is dangerous, however, as some ports cannot co-exist. In other cases, some ports can install two different files with the same filename.

誰かが私を助けてくれることを願っています、ありがとう!

4

2 に答える 2

0

あなたがこれを今までに解決したことを願っています。そうでない場合は、freebsd-ports@freebsd.orgまたはhackers@freebsd.orgがそのような質問への回答を得るのに最適な場所です。

于 2012-12-25T06:21:44.240 に答える
0

当時、help2man ポートは古かったり壊れていたようです。さらに、カテゴリとディレクトリをポートに追加または削除する場合は、Mk/bsd.port.mk を編集して関連するリストを更新する必要があります。

一部のポートが、削除されたポートに依存している可能性もあります。make index を実行してみて、インデックスをきれいに構築できるかどうかを確認できます。これは、ポートの少なくともデフォルト オプションの安定性に関する良い手がかりです。(条件付きの依存関係はテストされません) portlint を実行すると、ポートの検証にも役立ち、依存関係は問題ないように見えます。

于 2017-07-26T20:26:45.033 に答える