*はじめに
古いノートPC(celeron 400MHz)にFreeBSDを入れMacOSX(Leopard)
のTimeCupselにしようとしている。
Netatalkの開発者でしょうか? HAT様より、表題のバージョンが良いと
情報を頂き、準備することにしました。(ぼちぼちと準備します)
以下、導入中のメモなので随時?更新すると思います。
*状況
ー2009.03.15 15:00(JST)時点でmakeエラー発生。
( 何か指定が必要なのかな?、エラーとなったソースは見てません。)
ー2009.03.18 追記:参考サイト/メモ
ー2009.03.20 訂正:/usr/ports/databases/db42 (db2になってました)
ー2009.03.20 メモ:再コンパイル実施、同じ結果に終わる。(portsを全部消したので、結果が同じで良かったです)
ー2009.03.20 メモ:BDBのCFLAGSが間違っている。(autogen.sh,configure)
ー2009.03.20 コンパイル成功
ー2009.03.22 インストール&動作確認成功。
ー2009.03.25 削除:備考欄
ー2009.06.1x FreeBSD 7.1-RELEASE-p6にする。
ーーnetatalkの動作は特に問題なし、又、再コンパイルはしていない。
環境
| OS/他 | Version | CPU |
| FreeBSD | 7.1-RELEASE-p3 | i386 |
| gcc | 4.2.1 20070719 |
準備
Netatlak 2.1dev
- 参考サイトより、cvs で chekoutする。
- 必要と思う物をFreeBSD側にインストールする。
FreeBSD
- Berkelay DB v4.2 (4.2.52)のインストール
実行例 備考 #cd /usr/ports/databases/db42 #grep PORTVERSION Makefile バージョン確認のため #make install clean - openslp のインストール
実行例 備考 # cd /usr/ports/net/openslp # make install clean SLP_SECURUTY,ASYNC_APIをON指定 - cups のインストール
実行例 備考 # cd /usr/ports/print/cups # make install clean netatalkでCUPSも対応してくれる模様
Netatalk 2.1 dev のコンパイル
コマンド実行内容(/bin/shを使用)
| コマンド実行 | 備考 |
| # make clean | 以下の失敗時の内容を消す |
| # export CFLAGS=-I/usr/local/include/db42 | BDBのパス設定 |
| # ./autogen.sh | 検出したBDB CFLAGSは間違っている |
| # ./configure | 同上 |
| # make | 成功 |
インストール
/usr/local/etc/rc.d/netatalk stop として置いた方が良いかも知れません。
/usr/local/ 下にインストール (configureでインストール先未指定のため)
netatalk関連の環境設定ファイルは /usr/local/etc/netatalk配下となり
CNID関連のファイルを削除する必要がある様だ。
- afpd の確認
# /usr/local/sbin/afpd -V afpd 2.1dev - Apple Filing Protocol (AFP) daemon of Netatalk This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Please see the file COPYING for further information and details. afpd has been compiled with support for these features: AFP3.1 support: Yes Transport layers: TCP/IP DDP CNID backends: cdb dbd last SLP support: No TCP wrappers support: Yes Quota support: Yes Admin group support: Yes Valid shell checks: Yes cracklib support: No Dropbox kludge: No Force volume uid/gid: No afpd.conf: /usr/local/etc/netatalk/afpd.conf AppleVolumes.system: /usr/local/etc/netatalk/AppleVolumes.system AppleVolumes.default: /usr/local/etc/netatalk/AppleVolumes.default UAM search path: /usr/local/etc/netatalk/uams/ - 修正ファイル
- /usr/local/etc/netatalk下
ファイル名 修正内容 備考 AppleVolumes.default ../AppleVolumes.defaultの変更内容を反映 afpd.conf ../afpd.confの変更内容を反映 - /usr/local/etc/rc.d/netatalk
環境設定ファイルの参照先を /usr/local/etc/netatalkに修正。 - OSXのマウント(例:/opt/pbg4下)
Dir名 内容 備考 .AppleDB リネームする afpdがCNID関連のエラーを出力するため - < ホスト名>_< 有線MACアドレス>.sparsebundle 下
Dir名 内容 備考 .AppleDouble リネームする OSX側から自動マウントできない - Netatalk起動の確認
# /usr/local/etc/rc.d/netatalk start # netstat -a -f inet | grep afp tcp4 0 0 *.afpovertcp *.* LISTEN
- /usr/local/etc/netatalk下
MacOSX 側から確認
- FinderからFreeBSD側をマウントする。
- 「システム環境設定」→「Time Machine」を選択
- TimeMachineの状況をメニューバーに表示を選択
- このメニューバーから「今すぐバックアップ作成」を選択
しばし、バックアップ状況を確認しつつ、FreeBSDのコンソールに
エラーが表示されない事を観察する。
- このメニューバーから「今すぐバックアップ作成」を選択
- TimeMachineの状況をメニューバーに表示を選択
Netatalk 2.1 dev のコンパイル (失敗例)
- autogen.sh の実行(結果は抜粋)
configure: WARNING: Unrecognized options: --enable-maintainer-mode Using libraries: LIBS = -L$(top_srcdir)/libatalk CFLAGS = -I$(top_srcdir)/include -D_U_="__attribute__((unused))" -g -O2 -I$(top_srcdir)/sys SSL: LIBS = -lcrypto CFLAGS = -I/usr/include/openssl LIBGCRYPT: LIBS = -L/usr/local/lib -lgcrypt -lgpg-error CFLAGS = -I/usr/local/include PAM: LIBS = -lpam CFLAGS = WRAP: LIBS = -lwrap CFLAGS = BDB: LIBS = -L/usr/local/lib -ldb-4.2 CFLAGS = -I/usr/local/db42/include CUPS: LIBS = -lcups -L/usr/local/lib -lgnutls -L/usr/local/lib -lgcrypt -lgpg-error -lz -pthread -lm -lcrypt CFLAGS = -I/usr/local/include Configure summary: Install style: none AFP: AFP 3.x calls activated: yes Large file support (>2GB) for AFP3: yes DDP enabled: yes CNID: backends: cdb dbd last UAMS: DHX (PAM) DHX2 (PAM) RANDNUM (PAM) passwd (PAM) guest Options: CUPS support: yes SLP support: no tcp wrapper support: yes quota support: yes admin group support: yes valid shell check: yes cracklib support: no dropbox kludge: no force volume uid/gid: no Apple 2 boot support: no ACL support: no Extended Attributes: no - configure (何も指定せず実行) 実行結果抜粋
Using libraries: LIBS = -L$(top_srcdir)/libatalk CFLAGS = -I$(top_srcdir)/include -D_U_="__attribute__((unused))" -g -O2 -I$(top_srcdir)/sys SSL: LIBS = -lcrypto CFLAGS = -I/usr/include/openssl LIBGCRYPT: LIBS = -L/usr/local/lib -lgcrypt -lgpg-error CFLAGS = -I/usr/local/include PAM: LIBS = -lpam CFLAGS = WRAP: LIBS = -lwrap CFLAGS = BDB: LIBS = -L/usr/local/lib -ldb-4.2 CFLAGS = -I/usr/local/db42/include CUPS: LIBS = -lcups -L/usr/local/lib -lgnutls -L/usr/local/lib -lgcrypt -lgpg-error -lz -pthread -lm -lcrypt CFLAGS = -I/usr/local/include Configure summary: Install style: none AFP: AFP 3.x calls activated: yes Large file support (>2GB) for AFP3: yes DDP enabled: yes CNID: backends: cdb dbd last UAMS: DHX (PAM) DHX2 (PAM) RANDNUM (PAM) passwd (PAM) guest Options: CUPS support: yes SLP support: no tcp wrapper support: yes quota support: yes admin group support: yes valid shell check: yes cracklib support: no dropbox kludge: no force volume uid/gid: no Apple 2 boot support: no ACL support: no Extended Attributes: no - Makefile (configure で作成された)
- DBはちゃんと見つけてくれ反映さている模様。
BDB_BIN = /usr/local/bin BDB_CFLAGS = -I/usr/local/db42/include BDB_LIBS = -L/usr/local/lib -ldb-4.2 BDB_PATH = /usr/local
- DBはちゃんと見つけてくれ反映さている模様。
- make (エラー発生)
In file included from cnid_cdb_add.c:17: cnid_cdb_private.h:109: error: expected specifier-qualifier-list before 'DB_ENV' cnid_cdb_add.c: In function 'get_cnid': cnid_cdb_add.c:93: error: 'DBC' undeclared (first use in this function) cnid_cdb_add.c:93: error: (Each undeclared identifier is reported only once cnid_cdb_add.c:93: error: for each function it appears in.) cnid_cdb_add.c:93: error: 'cursor' undeclared (first use in this function) cnid_cdb_add.c:100: error: 'DB' has no member named 'cursor' cnid_cdb_add.c:100: error: 'DB_WRITECURSOR' undeclared (first use in this function) cnid_cdb_add.c:110: error: 'DB_SET' undeclared (first use in this function) cnid_cdb_add.c:122: error: 'DB_CURRENT' undeclared (first use in this function) cnid_cdb_add.c:124: error: 'DB_NOTFOUND' undeclared (first use in this function) cnid_cdb_add.c:126: error: 'DB_KEYFIRST' undeclared (first use in this function) cnid_cdb_add.c: In function 'cnid_cdb_add': cnid_cdb_add.c:187: error: 'CNID_private' has no member named 'flags' cnid_cdb_add.c:215: error: 'DB_NOOVERWRITE' undeclared (first use in this function) cnid_cdb_add.c:215: warning: passing argument 4 of 'db->db_cnid->put' makes integer from pointer without a cast cnid_cdb_add.c:215: error: too many arguments to function 'db->db_cnid->put' cnid_cdb_add.c: In function 'cnid_cdb_getstamp': cnid_cdb_add.c:266: warning: passing argument 4 of 'db->db_cnid->get' makes integer from pointer without a cast cnid_cdb_add.c:266: error: too many arguments to function 'db->db_cnid->get' cnid_cdb_add.c:267: error: 'DB_NOTFOUND' undeclared (first use in this function) cnid_cdb_add.c:279: warning: passing argument 4 of 'db->db_cnid->get' makes integer from pointer without a cast cnid_cdb_add.c:279: error: too many arguments to function 'db->db_cnid->get' *** Error code 1 Stop in ~/Develop/netatalk/libatalk/cnid/cdb. *** Error code 1 Stop in ~/Develop/netatalk/libatalk/cnid. *** Error code 1 Stop in ~/Develop/netatalk/libatalk. *** Error code 1 Stop in ~/Develop/netatalk. *** Error code 1 Stop in ~/Develop/netatalk.
参考サイト/メモ
- 重要情報 Netatalk 2.x CJK Environment
- LInux netatalk-2.1.0-0.1.35.dev.fc10.src.rpm導入問題
- RedHat,CentOS系の不具合? このFreeBSDでは、ーーwith-dbdが必要と言うエラーは
発生していない。
- RedHat,CentOS系の不具合? このFreeBSDでは、ーーwith-dbdが必要と言うエラーは
- Re AFP functions 76 and 79
- 見慣れないログ bad function 4Cと4Eと4F
- Time Machine with Netatalk
- AFP (作成中)
Functions 意味 Netatalk 備考 Hex Dec 2.0.3 2.1dev 4B 75 FPAccess関連? ? ? 非公開 4C 76 SpotLight関連 ? ? 非公開 4D 77 未使用 - - 4E 78 FPSyncDir関連 NG OK ディレクトリの同期 4F 79 FPSyncFork関連 NG OK ファイルの同期 - BDB関連;autogen.sh,configureの不具合(FreeBSDの場合)
正誤 CFLAGS 備考 OK -I/usr/local/include/db42 NG -I/usr/local/db42/include 何故かここをパスを決めるので、エラーになる。 (存在しない) - Mac OSX: Time Capsule for FreeBSD (+Netatalk 2.0.3 CJK Version
最近のコメント