1 |
#### /usr/lib/portage/bin/ebuild.sh |
2 |
|
3 |
preprocess_ebuild_env() { |
4 |
echo Touch: $(type touch) |
5 |
local filter_opts="" |
6 |
if [ -f "${T}/environment.raw" ] ; then |
7 |
# This is a signal from the python side, indicating |
8 |
that the |
9 |
# environment may contain stale |
10 |
SANDBOX_{DENY,PREDICT,READ,WRITE} |
11 |
# and FEATURES variables that should be filtered out. |
12 |
Between |
13 |
# phases, these variables are normally preserved. |
14 |
filter_opts="--filter-sandbox --filter-features |
15 |
${filter_opts}" |
16 |
fi |
17 |
filter_readonly_variables ${filter_opts} < "${T}"/environment \ |
18 |
> "${T}"/environment.filtered || return $? |
19 |
unset filter_opts |
20 |
mv "${T}"/environment.filtered "${T}"/environment || return $? |
21 |
rm -f "${T}/environment.success" || return $? |
22 |
# WARNING: Code inside this subshell should avoid making |
23 |
assumptions |
24 |
# about variables or functions after source "${T}"/environment |
25 |
has been |
26 |
# called. Any variables that need to be relied upon should |
27 |
already be |
28 |
# filtered out above. |
29 |
( |
30 |
export SANDBOX_ON=1 |
31 |
source "${T}/environment" || exit $? |
32 |
# We have to temporarily disable sandbox since the |
33 |
# SANDBOX_{DENY,READ,PREDICT,WRITE} values we've just |
34 |
loaded |
35 |
# may be unusable (triggering in spurious sandbox |
36 |
violations) |
37 |
# until we've merged them with our current values. |
38 |
export SANDBOX_ON=0 |
39 |
|
40 |
# It's remotely possible that save_ebuild_env() has |
41 |
been overridden |
42 |
# by the above source command. To protect ourselves, we |
43 |
override it |
44 |
# here with our own version. ${PORTAGE_BIN_PATH} is |
45 |
safe to use here |
46 |
# because it's already filtered above. |
47 |
source "${PORTAGE_BIN_PATH}/isolated-functions.sh" || |
48 |
exit $? |
49 |
|
50 |
# Rely on save_ebuild_env() to filter out any remaining |
51 |
variables |
52 |
# and functions that could interfere with the current |
53 |
environment. |
54 |
save_ebuild_env || exit $? |
55 |
echo Touch: $(type touch) |
56 |
###### touch "${T}/environment.success" || exit $? |
57 |
) > "${T}/environment.filtered" |
58 |
|
59 |
|
60 |
#### /usr/lib/portage/bin/ebuild.sh with -xv option |
61 |
... |
62 |
|
63 |
export |
64 |
type touch |
65 |
++ type touch |
66 |
+ echo Touch: touch is /bin/touch |
67 |
+ touch /var/tmp/binpkgs/media-tv/tvbrowser-2.5.3/temp/environment.success |
68 |
touch: error while loading shared libraries: librt.so.1: cannot open |
69 |
shared object file: No such file or directory |
70 |
+ exit 127 |
71 |
+ local retval |
72 |
.... |
73 |
|
74 |
### running touch |
75 |
/var/tmp/binpkgs/media-tv/tvbrowser-2.5.3/temp/environment.success in |
76 |
the console causes no error |
77 |
|
78 |
|
79 |
|
80 |
Fred Kastl schrieb: |
81 |
> hi, |
82 |
> |
83 |
> on every emerge --unmerge i get the following error Message: |
84 |
> |
85 |
> touch: error while loading shared libraries: librt.so.1: cannot open |
86 |
> shared object file: No such file or directory. |
87 |
> |
88 |
> ### revdep-rebuild found no missing library for touch or portage. |
89 |
> |
90 |
> ### ldconfig -p | grep librt.so.1 |
91 |
> librt.so.1 (libc6, OS ABI: Linux 2.6.9) => /lib/librt.so.1 |
92 |
> |
93 |
> ### ll /lib/librt.so.1 |
94 |
> lrwxrwxrwx 1 root root 14 19. Feb 19:22 /lib/librt.so.1 -> librt-2.6.1.so |
95 |
> ### ll /lib/librt-2.6.1.so |
96 |
> -rwxr-xr-x 1 root root 32400 8. Nov 14:05 /lib/librt-2.6.1.so |
97 |
> |
98 |
> ### equery belongs /lib/librt-2.6.1.so |
99 |
> [ Searching for file(s) /lib/librt-2.6.1.so in *... ] |
100 |
> sys-libs/glibc-2.6.1 (/lib/librt-2.6.1.so) |
101 |
> |
102 |
> ### fileaccess while running emerge --unmerge |
103 |
> fileaccess-dazuko /lib | grep librt |
104 |
> OPEN uid:0 pid:31995 mode:33261 flags:0 file_uid:0 file_gid:0 |
105 |
> file_device:0 file_size:32400 file:/lib/librt-2.6.1.so |
106 |
> OPEN uid:0 pid:32002 mode:33261 flags:0 file_uid:0 file_gid:0 |
107 |
> file_device:0 file_size:32400 file:/lib/librt-2.6.1.so |
108 |
> |
109 |
> can anyone help ? |
110 |
> |
111 |
> regards |
112 |
> |
113 |
> Fred |
114 |
> |
115 |
> emerge --unmerge app-admin/gnomesu |
116 |
> |
117 |
> >>> These are the packages that would be unmerged: |
118 |
> |
119 |
> app-admin/gnomesu |
120 |
> selected: 0.3.1 |
121 |
> protected: none |
122 |
> omitted: none |
123 |
> |
124 |
> >>> 'Selected' packages are slated for removal. |
125 |
> >>> 'Protected' and 'omitted' packages will not be removed. |
126 |
> |
127 |
> Would you like to unmerge these packages? [Yes/No] y |
128 |
> >>> Waiting 5 seconds before starting... |
129 |
> >>> (Control-C to abort)... |
130 |
> >>> Unmerging in: 5 4 3 2 1 |
131 |
> >>> Unmerging app-admin/gnomesu-0.3.1... |
132 |
> touch: error while loading shared libraries: librt.so.1: cannot open |
133 |
> shared object file: No such file or directory |
134 |
> |
135 |
> * |
136 |
> * ERROR: media-tv/tvbrowser-2.5.3 failed. |
137 |
> * Call stack: |
138 |
> * ebuild.sh, line 1641: Called die |
139 |
> * The specific snippet of code: |
140 |
> * preprocess_ebuild_env || \ |
141 |
> * die "error processing environment" |
142 |
> * The die message: |
143 |
> * error processing environment |
144 |
> * |
145 |
> * If you need support, post the topmost build error, and the call stack |
146 |
> if relevant. |
147 |
> * A complete build log is located at |
148 |
> '/var/tmp/binpkgs/media-tv/tvbrowser-2.5.3/temp/build.log'. |
149 |
> * The ebuild environment file is located at |
150 |
> '/var/tmp/binpkgs/media-tv/tvbrowser-2.5.3/temp/environment'. |
151 |
> * |
152 |
> !!! FAILED prerm: 1 |
153 |
> * The 'prerm' phase of the 'media-tv/tvbrowser-2.5.3' package has failed |
154 |
> * with exit value 1. The problem occurred while executing the ebuild |
155 |
> * located at '/var/db/pkg/media- |
156 |
> * tv/tvbrowser-2.5.3/tvbrowser-2.5.3.ebuild'. If necessary, manually |
157 |
> * remove the ebuild in order to skip the execution of removal phases. |
158 |
> |
159 |
> |
160 |
> ### and #### |
161 |
> |
162 |
> |
163 |
> emerge --unmerge media-tv/tvbrowser |
164 |
> |
165 |
> >>> These are the packages that would be unmerged: |
166 |
> |
167 |
> media-tv/tvbrowser |
168 |
> selected: 2.5.3 2.6.3 |
169 |
> protected: none |
170 |
> omitted: none |
171 |
> |
172 |
> >>> 'Selected' packages are slated for removal. |
173 |
> >>> 'Protected' and 'omitted' packages will not be removed. |
174 |
> |
175 |
> Would you like to unmerge these packages? [Yes/No] y |
176 |
> >>> Waiting 5 seconds before starting... |
177 |
> >>> (Control-C to abort)... |
178 |
> >>> Unmerging in: 5 4 3 2 1 |
179 |
> >>> Unmerging media-tv/tvbrowser-2.5.3... |
180 |
> touch: error while loading shared libraries: librt.so.1: cannot open |
181 |
> shared object file: No such file or directory |
182 |
> * |
183 |
> * ERROR: media-tv/tvbrowser-2.5.3 failed. |
184 |
> * Call stack: |
185 |
> * ebuild.sh, line 1641: Called die |
186 |
> * The specific snippet of code: |
187 |
> * preprocess_ebuild_env || \ |
188 |
> * die "error processing environment" |
189 |
> * The die message: |
190 |
> * error processing environment |
191 |
> * |
192 |
> * If you need support, post the topmost build error, and the call stack |
193 |
> if relevant. |
194 |
> * A complete build log is located at |
195 |
> '/var/tmp/binpkgs/media-tv/tvbrowser-2.5.3/temp/build.log'. |
196 |
> * The ebuild environment file is located at |
197 |
> '/var/tmp/binpkgs/media-tv/tvbrowser-2.5.3/temp/environment'. |
198 |
> * |
199 |
> !!! FAILED prerm: 1 |
200 |
> * The 'prerm' phase of the 'media-tv/tvbrowser-2.5.3' package has failed |
201 |
> * with exit value 1. The problem occurred while executing the ebuild |
202 |
> * located at '/var/db/pkg/media- |
203 |
> * tv/tvbrowser-2.5.3/tvbrowser-2.5.3.ebuild'. If necessary, manually |
204 |
> * remove the ebuild in order to skip the execution of removal phases. |
205 |
> |
206 |
> |
207 |
|
208 |
-- |
209 |
gentoo-user@l.g.o mailing list |