1 |
On Tue, 6 Oct 2020, Ashley Dixon wrote: |
2 |
|
3 |
> Date: Mon, 5 Oct 2020 19:55:50 |
4 |
> From: Ashley Dixon <ash@××××××××××.uk> |
5 |
> Reply-To: gentoo-user@l.g.o |
6 |
> To: gentoo-user@l.g.o |
7 |
> Subject: Re: [gentoo-user] pcre build failure |
8 |
> |
9 |
> This is confusing me to no end, partly because you seem to have included the |
10 |
> same text twice? The information posted seems to contradict itself, particularly |
11 |
> with the USE-flags. For example, here you have the `static-libs` flag disabled: |
12 |
> |
13 |
> On Mon, Oct 05, 2020 at 02:40:47PM -0400, Jude DaShiell wrote: |
14 |
> > [ebuild R ] dev-libs/libpcre-8.44:3::gentoo USE="bzip2 cxx jit readline recursion-limit (split-usr) (unicode) zlib -libedit -pcre16 -pcre32 -static-libs*" ABI_X86="(64) -32 (-x32)" 0 KiB |
15 |
> |
16 |
> ... which is supported by the output of the configure script: |
17 |
> |
18 |
> > checking whether to build static libraries... no |
19 |
> [...] |
20 |
> > Build static libs ............... : no |
21 |
> |
22 |
> ... but then in the output of `emerge --info`, which displays the flags of the |
23 |
> currently installed version, the `static-libs` flag is enabled: |
24 |
> |
25 |
> > dev-libs/libpcre-8.44::gentoo was built with the following: |
26 |
> > USE="bzip2 cxx jit readline recursion-limit (split-usr) static-libs (unicode) zlib -libedit -pcre16 -pcre32" ABI_X86="(64) -32 (-x32)" |
27 |
> |
28 |
> As the asterisk in the first emerge output would suggest, the flag is only now |
29 |
> being disabled for the package. Such a change is very dangerous, and although I |
30 |
> can't imagine why PCRE was built to use static libraries in the first place, I |
31 |
> can assume this might be the cause of the error. I am still unable to reproduce |
32 |
> this behaviour on my own system. |
33 |
> |
34 |
> PCRE depends on the following packages, so you will want to make sure that all |
35 |
> of these agree on the nature of the libraries: static or dynamic? |
36 |
> |
37 |
> $ equery g libpcre |
38 |
> * Searching for libpcre ... |
39 |
> * dependency graph for dev-libs/libpcre-8.44 |
40 |
> `-- dev-libs/libpcre-8.44 amd64 |
41 |
> `-- app-arch/bzip2-1.0.6-r11 (app-arch/bzip2) amd64 |
42 |
> `-- sys-libs/zlib-1.2.11-r2 (sys-libs/zlib) amd64 |
43 |
> `-- dev-libs/libedit-20191211.3.1 (dev-libs/libedit) amd64 |
44 |
> `-- sys-libs/readline-8.0_p4 (sys-libs/readline) amd64 |
45 |
> `-- virtual/pkgconfig-2 (virtual/pkgconfig) amd64 |
46 |
> `-- app-portage/elt-patches-20170815 (>=app-portage/elt-patches-20170815) amd64 |
47 |
> [ dev-libs/libpcre-8.44 stats: packages (7), max depth (1) ] |
48 |
> |
49 |
> |
50 |
> Irrelevant aside: you see these annoying ANSI colour codes captured by `script`? |
51 |
> You can strip them out with the `ansifilter` program, provided by the `app-text/ |
52 |
> ansifilter` package in gentoo.git. It takes standard input or a file name, and |
53 |
> without any arguments, will erase all ANSI escape sequences. |
54 |
> |
55 |
> > [01;31mlivecd[01;34m / #[00m exit |
56 |
> |
57 |
> $ ansifilter <<< "[01;31mlivecd[01;34m / #[00m exit" # bash syntax |
58 |
> livecd / # exit |
59 |
> |
60 |
> In future, if you just want to capture the output of a (possibly interactive) |
61 |
> command, `tee` is better than `script`. It usually strips escape sequences and |
62 |
> such. However, it does not capture standard error to the output file, so you'll |
63 |
> want to redirect it into standard output, like so: |
64 |
> |
65 |
> $ ./prog 2>&1 | tee prog-log |
66 |
> |
67 |
> |
68 |
|
69 |
-- |
70 |
|
71 |
When the failure happened on the computer I neglected to braille the |
72 |
commands that would have only produced a single copy of the text. In |
73 |
order to get the content from the second file, I needed to run the emerge |
74 |
update world command again then locate the command for the second file |
75 |
then cat that command. Braille paper is available here so I won't make |
76 |
that mistake again. |