@Nikita1244
Anonymous

Происходит ошибка сборки GNU M4, почему?

Собираю LFS, ранее собирал LFS - все было нормально.
Все делаю почти по инструкции в LFS, только версию GCC повысил с 12.2.0 до GCC 13.1.0. Прокатило вроде.
Вот ошибка:
spoiler
lfs@unknown-desktop:/mnt/lfs/sources/m4-1.4.19> make -j12
make  all-recursive
make[1]: Entering directory '/mnt/lfs/sources/m4-1.4.19'
Making all in .
make[2]: Entering directory '/mnt/lfs/sources/m4-1.4.19'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/mnt/lfs/sources/m4-1.4.19'
Making all in examples
make[2]: Entering directory '/mnt/lfs/sources/m4-1.4.19/examples'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/mnt/lfs/sources/m4-1.4.19/examples'
Making all in lib
make[2]: Entering directory '/mnt/lfs/sources/m4-1.4.19/lib'
  GEN      alloca.h
  GEN      configmake.h
  GEN      dirent.h
  GEN      fcntl.h
  GEN      getopt.h
  GEN      getopt-cdefs.h
  GEN      iconv.h
  GEN      inttypes.h
  GEN      langinfo.h
  GEN      limits.h
  GEN      locale.h
  GEN      math.h
  GEN      sched.h
  GEN      signal.h
  GEN      sigsegv.h
  GEN      spawn.h
  GEN      stdio.h
  GEN      stdlib.h
  GEN      string.h
  GEN      sys/random.h
  GEN      sys/types.h
  GEN      sys/stat.h
  GEN      time.h
  GEN      sys/wait.h
  GEN      unistd.h
  GEN      wchar.h
  GEN      wctype.h
make  all-am
make[3]: Entering directory '/mnt/lfs/sources/m4-1.4.19/lib'
  CC       openat-proc.o
  CC       c-stack.o
  CC       c-strcasecmp.o
  CC       c-strncasecmp.o
  CC       canonicalize.o
  CC       clean-temp.o
  CC       clean-temp-simple.o
  CC       cloexec.o
  CC       close-stream.o
  CC       closein.o
  CC       closeout.o
  CC       concat-filename.o
In file included from /mnt/lfs/usr/include/stdlib.h:1040,
                 from ./stdlib.h:36,
                 from openat-priv.h:25,
                 from openat-proc.c:22:
/mnt/lfs/usr/include/bits/stdlib.h: In function 'wctomb':
/mnt/lfs/usr/include/bits/stdlib.h:86:3: error: #error "Assumed value of MB_LEN_MAX wrong"
   86 | # error "Assumed value of MB_LEN_MAX wrong"
      |   ^~~~~
In file included from /mnt/lfs/usr/include/stdlib.h:1040,
                 from ./stdlib.h:36,
                 from c-stack.c:44:
/mnt/lfs/usr/include/bits/stdlib.h: In function 'wctomb':
/mnt/lfs/usr/include/bits/stdlib.h:86:3: error: #error "Assumed value of MB_LEN_MAX wrong"
   86 | # error "Assumed value of MB_LEN_MAX wrong"
      |   ^~~~~
  CC       dirname.o
  CC       basename.o
In file included from /mnt/lfs/usr/include/stdlib.h:1040,
                 from ./stdlib.h:36,
                 from clean-temp-simple.c:28:
/mnt/lfs/usr/include/bits/stdlib.h: In function 'wctomb':
/mnt/lfs/usr/include/bits/stdlib.h:86:3: error: #error "Assumed value of MB_LEN_MAX wrong"
   86 | # error "Assumed value of MB_LEN_MAX wrong"
      |   ^~~~~
make[3]: *** [Makefile:2866: c-stack.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:2866: openat-proc.o] Error 1
canonicalize.c: In function 'canonicalize_filename_mode':
canonicalize.c:484:5: warning: #warning "GCC might issue a bogus -Wreturn-local-addr warning here." [-Wcpp]
  484 |    #warning "GCC might issue a bogus -Wreturn-local-addr warning here."
      |     ^~~~~~~
canonicalize.c:485:5: warning: #warning "See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93644>." [-Wcpp]
  485 |    #warning "See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93644>."
      |     ^~~~~~~
make[3]: *** [Makefile:2866: clean-temp-simple.o] Error 1
make[3]: Leaving directory '/mnt/lfs/sources/m4-1.4.19/lib'
make[2]: *** [Makefile:2481: all] Error 2
make[2]: Leaving directory '/mnt/lfs/sources/m4-1.4.19/lib'
make[1]: *** [Makefile:2018: all-recursive] Error 1
make[1]: Leaving directory '/mnt/lfs/sources/m4-1.4.19'
make: *** [Makefile:1974: all] Error 2

Есть идеи? Limits.h есть файл в /usr
  • Вопрос задан
  • 136 просмотров
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
/mnt/lfs/usr/include/bits/stdlib.h:86:3: error: #error "Assumed value of MB_LEN_MAX wrong"

Ну что, нужно взять /mnt/lfs/usr/include/bits/stdlib.h и почитать внимательно, что там вокруг 86й строчки написано и где это assumed value зашито. Вообще эта ошибка не выглядит специфичной для m4, больше похоже на глюк libc.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы