CentOS 4.3でperl 5.6.0をコンパイルする

なんでまた、と俺も思うけどしゃーないので。

make: *** No rule to make target `<built-in>', needed by `miniperlmain.o'.  Stop.

こんなエラーが出てとまる。って何?と思うじゃん。
見ると、Makefileから呼ばれるmakefileってなファイルに

av$(OBJ_EXT): <built-in>
av$(OBJ_EXT): <command line>

こんな感じで、依存関係として定義されてる。そりゃmakeも知らんと言うわいな。
このファイルを作る元になるのが makedepend.SH というやつで、ソースをのぞくと

    $sed \
        -e '1d' \
        -e '/^#.*<stdin>/d' \
        -e '/^#.*"-"/d' \
        -e 's#\.[0-9][0-9]*\.c#'"$file.c#" \
        -e 's/^[         ]*#[    ]*line/#/' \
        -e '/^# *[0-9][0-9]* *[".\/]/!d' \
        -e 's/^.*"\(.*\)".*$/'$filebase'\$(OBJ_EXT): \1/' \
        -e 's/^# *[0-9][0-9]* \(.*\)$/'$filebase'\$(OBJ_EXT): \1/' \
        -e 's|: \./|: |' \
        -e 's|\.c\.c|.c|' $uwinfix | \
    $uniq | $sort | $uniq >> .deptmp

こういう感じでリスト作ってた。(雰囲気だけわかりゃ良いんです)
よく見ると、を d(削除)するように書いてある。同じ要領でdすりゃ良いんだな、ってことで

--- makedepend.SH.original	2000-03-03 03:12:26.000000000 +0900
+++ makedepend.SH	2006-10-11 12:43:10.000000000 +0900
@@ -137,6 +137,8 @@
     $sed \
 	-e '1d' \
 	-e '/^#.*<stdin>/d' \
+	-e '/^#.*<built-in>/d' \
+	-e '/^#.*<command line>/d' \
 	-e '/^#.*"-"/d' \
 	-e 's#\.[0-9][0-9]*\.c#'"$file.c#" \
 	-e 's/^[	 ]*#[	 ]*line/#/' \

こういう変更を加えて、最初からやり直し。makefileにおかしな依存関係として出てこなくなったし、無事コンパイルできましたとさ。
おしまい。