Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Error when building from source #123386

Open
@gugolple

Description

@gugolple

Bug report

Bug description:

I am following the Linux from scratch 12.1.

When I get to the chapter of building python I encounter the following error:

./configure --prefix=/usr   \
            --enable-shared \
            --without-ensurepip
...
configure: creating ./config.status
./config.status: line 527: 0a1,737: command not found
./config.status: line 528: syntax error near unexpected token `newline'
./config.status: line 528: `> # This file is a shell script that caches the results of configure'

And it fails completely. When checking the file config.status we can see the error as reported:

exec 5>>config.log
{
  echo
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
  printf "%s\n" "$ac_log"
} >&5

0a1,737
> # This file is a shell script that caches the results of configure
> # tests run on this system so they can be shared between configure
> # scripts and configure runs, see configure's option --config-cache.
> # It is not useful on other systems.  If it contains results you don't
> # want to keep, you may remove or edit it.
> #
> # config.status only pays attention to the cache file if you give it
> # the --recheck option to rerun configure.
> #
> # `ac_cv_env_foo' variables (set or unset) will be overridden when
> # loading this file, other *unset* `ac_cv_foo' will be assigned the
> # following values.

From there we can check were configure is failing by at least knowing the limits, because we know is between the two other code blocks.

  • The top code block exec 5>>config.log can be located to line 32280.
  • The bottom code block # This file is a shell script that caches the results of configure can be located to line 31281.
    • But this one is related to confcache.

At line 32280 we can se something interesting just below:

32290: cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
32291: _ACEOF

The lines (32290 and 32291) do not add any content to config.status and if you try to remove them, the ./configure step finishes correctly and you can build the code.

The problem is seen in versions:

  • 3.12.2
  • 3.12.3
  • 3.12.4
  • 3.12.5

Thank you and kind regards,

Gugo

CPython versions tested on:

3.12

Operating systems tested on:

Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildThe build process and cross-buildpendingThe issue will be closed if no feedback is providedtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions