ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

FreeBSD質問所コミュの[アプリ設定]ClamAVのアップデートが出来ない

  • mixiチェック
  • このエントリーをはてなブックマークに追加
アプリ設定というかインストールか迷ったのですが・・。

先日ClamAVが0.90にアップデートされ、
freshclamで「OUTDATED!!」出たので、
いつもどおり
# cd /ports/security/clamav
(VPS環境のためか/usr/ports以下ではなく/ports以下です)
# make fetchして
# make WITH_MILTER=yes install
したのですが、
途中で

------------------------------------------------------

Package openssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `openssl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'openssl' found
7.16.0
checking for mi_stop in -lmilter... no
checking for library containing strlcpy... no
checking for mi_stop in -lmilter... no
configure: error: Cannot find libmilter
===> Script "configure" failed unexpectedly.
Please report the problem to garga@FreeBSD.org [maintainer] and attach the
"/var/build/ports/security/clamav/work/clamav-0.90/config.log" including the
output of the failure of your make command. Also, it might be a good idea to
provide an overview of all packages installed on your system (e.g. an `ls
/var/db/pkg`).
*** Error code 1

Stop in /ports/security/clamav.

----------------------------------------------------

となり止まってしまいます。
opensslがないとかlibmilterがないとか言われているようですが、
何せ技術に乏しいためどうしたらよいのか分かりません。
今までは上記の手法でアップデートできていました。
(ClamAVは0.84?あたりから最近は0.88にアップデートしています。)
libmilterあたりを入れてやれば解決するものなのでしょうか?

ちなみに
FreeBSD 4.7
Sendmail 8.13.6
でclamav-milterを使って処理しています。
clamdとclamav-milterを使うのが一般的なようですが、
clamdが動いているとclamascanが動いて
サーバーの動きを圧迫してしまうので、
デーモンとして動かしているのは
clamav-milterだけです。

どなたかご教授いただければ幸いです。
よろしくお願いいたします。

コメント(16)

とりあえず手元で環境が再現できないのでアレなのですが…
ports ではディレクトリがデフォルトで /usr/ports になっていますので、/ports に配置されているとパスが見つからないのかもしれませんね。
/etc/make.conf に
PORTSDIR="/ports"
と書いてみてはどうでしょうか?
腐乱化…Flankerさま

いつもご教授有難うございます。

make.confへの上記の記述をやってみましたが、
make自体が走らなくなってしまいました・・・。

以前は同じ手順でアップデートできていたので、
make.confの問題ではないのではないかと。

ClamAVのバージョンがあがったことで
依存関係が解消できなくなったとか、
Sendmailのバージョンが対応していないとか・・。

もう少し調べてみます・・・。
make.conf は makefile の一部と考えた方が良いと思います。
要するに単純に include されてしまうので、ここでクォート落としていたりとかの構文エラーがあると make が走らなくなってしまいます。

それから、ちょっと調べてみたら2月18日付で PORTREVISION が上がって 0.90_2 になっていますね。
http://www.freshports.org/security/clamav/
cvsup してから make deinstall して make install するとうまくいくかもしれません。
FreeBSD 4.11-RELEASE-p26で 0.90_2 でも同じ状況です。
/usr/lib/libmilter.soなどは入っているのですがね。。。
milter =no では -lpthread が無い、とか言われて止まります。-lpthreadは4.xx系列では libc_rに含まれるのでconfigureの間違いだそうで解決方は本家サイトにありましたがmilterで止まるのは何でか不明です。5.xx系列でも同様みたいですが。こちらも困っています。
腐乱化…Flankerさま>

>make deinstall して make install すると

確かに一度deinstallというのはありかもしれません。
が、deinstallしたら最後、二度と入らなくなる
可能性が怖くて踏み切れません・・・・。
何せ、会社の業務でバリバリに使っているメールサーバなもので・・。
(そんなものをBSDの知識のない人間が管理しなくてはいけないのが
そもそもの間違いな気がしますが)


ためすけさま>

おお、同じことで悩んでいる方がいらっしゃいましたか!
技術的には「一緒にするな!」ってぐらい僕のレベルは低いですが・・。

何にせよ、解決策が見つかるとよいのですが・・。
とりあえず、6.2-RELEASEで
make WITH_MILTER=yes
してみたら、問題無かったです。
注)'install'なし

makeだけでもエラーが出ますか?
それともinstallで出るのでしょうか?
訂正して再度書きます。
6.2 でのコンパイルは通ったのは確認したのですが、4.11のportsでかなり乱暴な方法でインストールまでは出来たのでとりあえずご報告。ports のMakefileとconfigureを無理矢理書き直します。先ずはportsのディレクトリで、

Makefile : 103-105行

#.if ${OSVERSION} == 502010
PTHREAD_LIBS= -pthread -lc_r
#.endif

Makefile : 140行

@${REINPLACE_CMD} -e 's|-lpthread -lc_r|${PTHREAD_LIBS}|g'

に、書き換えます。
次に Make をはじめて、checking ... なんちゃらと出てきたら ctrl-c で中断

ee work/clamav-0.90/configure で開いて、

22304行あたりの、-lpthread を -pthread に

CLAMAV_MILTER_LIBS="$CLAMAV_MILTER_LIBS -pthread"


23461行あたりを、no を yesに

ac_cv_lib_milter_mi_stop=yes

次に

ee work/clamav-0.90/configure.in と開いて、

442行あたり -lpthread を -pthread に

THREAD_LIBS="-pthread -lc_r"


書き換えて再度 Make 

テスト環境で一応コンパイルは通ってインストールまで行いました。これから動作試験をする予定です。
portsの問題は2つあって、configureが何でかlibmilterが無いと勘違いする(?)のと、libpthreadを至る所でリンクしようとする事、の様でした。上記のやり方でclamav 0.9がFreeBSD4.11上で動作しました。
が、あとで分かった。もっと簡単に、/usr/lib の中で、
ln -s /usr/lib/libc_r.so.4 libpthread.so
としておくだけで良い、らしい。こちらの方がスマートで良い様でした。
ためすけさま>

すごい!!

# cd /usr/lib
# ln -s /usr/lib/libc_r.so.4 libpthread.so

だけでmakeが通りました!!

早速インストールしてみました。
が、しかし、設定ファイルのOptionがだいぶ変更が出ているようですね。
LogTimeなどのOptionがいくつかエラーといわれて
コメントアウトで逃げています。

とりあえず、EICARテストウィルスも削除されましたし、
メールのヘッダーにも0.90が記載されているので
恐らく大丈夫ではないかと思います。

みなさま、有難うございました。
皆さまお久しぶりです。

バージョンが0.91にあがったのでアップデートしようと思ったのですが、
久々にエラーでとまりました。

# cd /ports/security/clamav
# make fetch
===> Vulnerability check disabled, database not found
===> Found saved configuration for clamav-0.90.3
=> clamav-0.91.1.tar.gz doesn't seem to exist in /var/distfiles/.
=> Attempting to fetch from ftp://ftp.jp.freebsd.org/pub/FreeBSD/distfiles/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from http://heanet.dl.sourceforge.net/sourceforge/clamav/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from http://nchc.dl.sourceforge.net/sourceforge/clamav/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from http://kent.dl.sourceforge.net/sourceforge/clamav/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from http://easynews.dl.sourceforge.net/sourceforge/clamav/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from http://ufpr.dl.sourceforge.net/sourceforge/clamav/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from http://umn.dl.sourceforge.net/sourceforge/clamav/.
fetch: invalid size ( 13099119)
=> Attempting to fetch from ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/.
fetch: invalid size ( 13099119)
=> Couldn't fetch it - please try to retrieve this
=> port manually into /var/distfiles/ and try again.
*** Error code 1

Stop in /ports/security/clamav.

で止まってしまいます。
「マニュアルで/var/distfilesへ入れて・・」なんて書いてありますが、
いまいち良くわかりません・・・。

どうしたら解決出来ますでしょうか?
ご教授のほどよろしくお願いいたします。
とりあえず csup ports-supfile してから make fetch してみました。
問題なく fetch 出来ましたが…

とりあえず csup 又は cvsup してから /usr/ports/distfiles の clamav-*.tar.gz を消してやり直してみると解決するかもしれません。

/var/distfiles になっているのが微妙に変な気がしますが、その辺は設定の問題かも。
そういえば、これってチョット特殊な環境でしたね(汗)
現在の ports は 4-stable に対応していないみたいなので 4.x だと問題が出るかもしれないです。
# 現在手元に 4.x マシンが無いのですぐに確認できないです orz

とりあえず Makefile を参考にして手動で fetch コマンド使って distfiles にファイルをDLしてやれば何とかなるかもしれません。
>腐乱化…Flankerさま

毎度お世話になります・・・。

ええ、特殊な環境です・・・。
VPS環境にありまして。

cvsupしてみたら、相変わらずエラーですが内容が変わりました。

# make fetch
On FreeBSD before 6.2 ports system unfortunately can not set default X11BASE by itself so please help it a bit by setting X11BASE=${LOCALBASE} in make.conf.
On the other hand, if you do wish to use non-default X11BASE, please set variable USE_NONDEFAULT_X11BASE.
*** Error code 1

Stop.

今度はおっしゃるとおり、4.xの問題になったようです。
ちなみに4.7です。

make.confに何かを記述すれば良いのでしょうか?
皆様お久しぶりです。

前回の質問から放置ですみません・・・。
前回の問題は解決していたのですが、
久しぶりにエラーで困っています。

clamav-0.93.1が出たので、アップデートしようと思ったのですが、
いつも前のバージョンをdeinstallしないと入らないので、
今回もまたdeinstallしたら、新しいものが入らなくなってしまいました・・・。
makeが途中で止まります。


エラーメッセージ

#################################################################
ここまで略

checking for C compiler default output file name...
configure: error: C compiler cannot create executables
See `config.log' for more details.
===> Script "configure" failed unexpectedly.
Please report the problem to garga@FreeBSD.org [maintainer] and attach the
"/var/build/ports/security/clamav/work/clamav-0.93.1/config.log" including
the output of the failure of your make command. Also, it might be a good idea
to provide an overview of all packages installed on your system (e.g. an `ls
/var/db/pkg`).
*** Error code 1

Stop in /ports/security/clamav.
*** Error code 1

Stop in /ports/security/clamav.
#################################################################

”configure: error: C compiler cannot create executables”
この行が問題になっているようなのですが、
何をどうしたら解決できるんでしょうか?

アドバイスよろしくお願いいたします。

ログインすると、残り2件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

FreeBSD質問所 更新情報

FreeBSD質問所のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング