交叉编译glibc-2.9时出现如下错误提示:
mawk: scripts/gen-sorted.awk: line 19: syntax error at or near ]
mawk: scripts/gen-sorted.awk: line 19: runaway regular expression /, "", subd ...
解决一(优先):
http://chinajz.spaces.live.com/blog/cns!ead556f11efe5c17!430.entry
=======================================
引用如下:
首先将debian系统中的awk由mawk变为gawk,这是由于两者在处理上有些语法差别:
apt-get install gawk
mv /usr/bin/{mawk,mawk.orig}
cp /usr/bin/{gawk,mawk}
=======================================
解决二(来自网络):
http://sourceware.org/ml/crossgcc/2007-07/msg00029.html
此方案在后续使用mawk编译时仍会碰到问题。
=======================================
引用如下:
This is a simple patch when you still want to be using mawk.
Check the line numbers, did it for 2.6 and not 2.5
original patch glibc-2.6-mawk_fix-1.patch by Jim Gifford
<jim@linuxfromscratch.org>
Mark
diff -Naur glibc-2.6.orig/scripts/gen-sorted.awk
glibc-2.6/scripts/gen-sorted.awk
--- glibc-2.6.orig/scripts/gen-sorted.awk 2006-02-28
07:05:57.000000000 +0000
+++ glibc-2.6/scripts/gen-sorted.awk 2007-07-20 21:03:50.000000000 +0000
@@ -16,7 +16,7 @@
{
subdir = type = FILENAME;
sub(/^.*///, "", type);
- sub(///[^/]+$/, "", subdir);
+ sub(///[^//]+$/, "", subdir);
sub(/^.*///, "", subdir);
thisdir = "";
}
@@ -56,13 +56,13 @@
# The Subdirs file comes from an add-on that should have the
subdirectory.
dir = FILENAME;
do
- sub(///[^/]+$/, "", dir);
+ sub(///[^//]+$/, "", dir);
while (dir !~ ///sysdeps$/);
sub(///sysdeps$/, "", dir);
if (system("test -d " dir "/" thisdir) == 0)
dir = dir "/" thisdir;
else {
- sub(///[^/]+$/, "", dir);
+ sub(///[^//]+$/, "", dir);
if (system("test -d " dir "/" thisdir) == 0)
dir = dir "/" thisdir;
else {
=======================================