Error building libc_2.27-3ubuntu1.6 on Ubuntu 18.04 AMD64
I need to build the package libc_2.
I can partially use the source code built but when telling gdb where the source code is, gdb still doesn't find some other functions.
if can find open() but can't find printf() although csu has been compiled, at least i can find the ".o"
Here is the error: https:/
It seems to build using x86_64-
x86_64-
x86_64-
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Is there a way to tell dpkg-buildpackage to configure for x86_64-
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.6 LTS
Release: 18.04
Codename: bionic
Question information
- Language:
- English Edit question
- Status:
- Answered
- For:
- Ubuntu glibc Edit question
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Revision history for this message
|
#1 |
What exactly do you want to do?
There is debug information available with the original Ubuntu packages, e.g. https:/
In my opinion it makes more sense to switch your build environment to the same status as it was with the original build (i.e. gcc 7), than trying to reconfigure the package to allow building with gcc 8.
see e.g. https:/
Revision history for this message
|
#2 |
Thanks for the answer.
"What exactly do you want to do?"
I want to build libc_2.
The build failed as per the error reported.
I have already installed the dbg, but it did not help to solve my problem, which is to debug libc6 with gdb.
I solved my problem by creating a symlink to the source code, but the source code must be patched by the build system. And the build fails to complete.
So i just want to build the package so i know the source code has been patched.
Or if you know a way to just fire dpkg-buildpackage with only the first process that is to patch the code will be fine.
Revision history for this message
|
#3 |
"I want to build libc_2.
Why do you want to build a new copy? The package already exists in the repositories.
Which patch do you want to apply (or check whether it is applied)?
If you want to debug libc6, why do you then try building libc?
One of the error messages is a missing ndbm.h file.
That should be provided by libgdbm-compat-dev
Do you have that package installed?
Revision history for this message
|
#4 |
"Why do you want to build a new copy? The package already exists in the repositories."
I need the source code in sync with :
rwxr-xr-x 1 root root 15873680 mai 3 07:19 /usr/lib/
"Do you have that package installed?"
No, thank you, i missed that, will do a rebuild and see.
The ubuntu package should enforce libgdbm-compat-dev, which does not.
Ubuntu/debian patch set:
git-updates.diff
git-updates-2.diff
locale/
locale/
locale/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
localedata/
alpha/local-
alpha/submitted
alpha/local-
alpha/submitted
alpha/submitted
arm/local-
arm/unsubmitted
arm/unsubmitted
arm/local-
arm/local-
arm/unsubmitted
arm/local-
hppa/local-
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
#hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
hurd-i386/
#hurd-i386/
i386/local-
i386/unsubmitte
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
kfreebsd/
m68k/local-
m68k/local-
m68k/submitted-
mips/submitted-
powerpc/
sh4/local-
sparc/submitted
all/branch-
all/local-
all/local-
all/local-
all/local-ldd.diff
all/local-
all/submitted-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/local-
any/submitted-
any/submitted-
any/submitted-
any/local-
any/local-
any/local-
any/local-
any/unsubmitted
any/unsubmitted
any/local-
any/local-
any/local-
any/submitted-
any/submitted-
any/local-
# Ubuntu patches live in their own little world, to maintain sanity
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
ubuntu/
<email address hidden>
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
ubuntu/
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/CVE-
any/fix_
Revision history for this message
|
#5 |
"The ubuntu package should enforce libgdbm-compat-dev, which does not."
Apparently libgdbm-compat-dev isn't really necessary. The buildlog of the package in the Ubuntu repositories https:/
In any case the build-dependencies clearly state a dependency on g++-7
With respect to the patches: from the buildlog:
dpkg-source: info: extracting glibc in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking glibc_2.
dpkg-source: info: unpacking glibc_2.
dpkg-source: info: applying git-updates.diff
dpkg-source: info: applying git-updates-2.diff
dpkg-source: info: applying locale/
dpkg-source: info: applying locale/
dpkg-source: info: applying locale/
dpkg-source: info: applying localedata/
...
dpkg-source: info: applying any/CVE-
dpkg-source: info: applying any/CVE-
dpkg-source: info: applying any/CVE-
dpkg-source: info: applying any/fix_
That is 100% in line with the list in your previous comment (except those few that are commented out with a hash sign).
Revision history for this message
|
#6 |
Thank you for pointing to the buildlog file
Launchpad:
Summary of test results:
5742 PASS
24 UNSUPPORTED
16 XFAIL
12 XPASS
local build:
Summary of test results:FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
7 FAIL
5736 PASS
23 UNSUPPORTED
16 XFAIL
12 XPASS
I don't have a buildlog, but i can see these errors on screen:
FAIL: intl/tst-gettext
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
FAIL: nptl/test-
Searching for some of the errors:
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xb42: file test-rwlock-
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
but it is built:
ls -la /apps/libc6/
-rwxr-xr-x 1 root root 57296 jun 8 21:39 /apps/libc6/
file /apps/libc6/
/apps/libc6/
OBS:
printing the result from test-rwlock-
./test-
result: 0
So, the problem is with the script!. No idea where and how to fix it.
FAIL: intl/tst-gettext
original exit status 1
test `gettext' with LANGUAGE set
test `gettext' with LANGUAGE set
test `dgettext' with LANGUAGE set
test `gettext' with LC_ALL set
test `gettext' with LC_ALL deciding
test `dgettext' with LC_ALL deciding
test `gettext' with LC_MESSAGES set
test `gettext' with LC_MESSAGES deciding
test `dgettext' with LC_MESSAGES deciding
test `dcgettext' with category == LC_MESSAGES
test `dcgettext' with LANGUAGE == LC_TIME
test `dcgettext' with LANGUAGE == LC_NUMERIC
tst-gettext.c:214: setlocale (LC_ALL, ""): No such file or directory
test `gettext' with LANG set
test `gettext' with LANG set
test `dgettext' with LANG set
the locale error seems to be an easy fix
i have to figure out why and how to fix the nptl errors, any idea?
Revision history for this message
|
#7 |
I tried to run without clean in hoping the script would find the files, but no.
----------
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xa92: file test-cond-
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
----------
----------
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xb72: file test-condattr-
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
----------
----------
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xd52: file test-mutex-
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
----------
----------
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xcc2: file test-mutexattr-
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
----------
----------
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xb42: file test-rwlock-
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
----------
----------
FAIL: nptl/test-
original exit status 1
Error: Response does not match the expected pattern.
Command: start
Expected pattern: main
Response: Temporary breakpoint 1 at 0xb62: file test-rwlockattr
Starting program: /apps/libc6/
warning: Cannot exec /bin/bash -e
warning: -c
warning: exec /apps/libc6/
warning: Error: No such file or directory
During startup program exited with code 127.
(gdb)
----------
All files are there, would you know which script calls for these tests?
Revision history for this message
|
#8 |
Looks like something is wrong with the script test_printers_
I cheated the test and the build bypassed the error.
except pexpect.
print('Error: {0}'.format(
exit(PASS)
The newbie question, do i have to have a printer installed? What could be wrong with the script?
Can you help with this problem?
Provide an answer of your own, or ask alex-mobigo for more information if necessary.