1 |
Matthias Maier schrieb: |
2 |
|
3 |
> Am Donnerstag, 27. September 2007 schrieb Markus Schönhaber: |
4 |
>> [..] |
5 |
>> Skips the packages specified on the command-line that |
6 |
>> have already been installed. Without this option, any packages, |
7 |
>> ebuilds, or deps you specify on the command-line will cause Portage |
8 |
>> to remerge the package, even if it is already installed. |
9 |
>> Note that Portage will not remerge dependencies by default." |
10 |
>> und das einzige "Paket", das Du bei Deinem emerge-Aufruf auf der |
11 |
>> Kommandozeile übergibst, "world" ist, kann meiner Interpretation nach |
12 |
>> --noreplace in diesem Fall nur gar nichts tun. |
13 |
>> Vielleicht täusche ich mich aber auch. |
14 |
> |
15 |
> Nein. |
16 |
> --noreplace verhindert genau dann ein Neubauen eines Paketes, wenn |
17 |
> dieses bereits in der Version, die gebaut werden soll vorliegt. |
18 |
> |
19 |
> D.h. dass z.B. ein |
20 |
> # emerge -np =app-cdr/k3b-0.12.17 |
21 |
> das Bauen von k3b verhindert , wenn du bereits Version 0.12.17 gebaut |
22 |
> hast. |
23 |
> |
24 |
> Dies ist _fast_ das gleiche, was --update macht. (Die neueste |
25 |
> Paketversion über eine ältere installieren, wenn noch nicht |
26 |
> installiert.) |
27 |
> |
28 |
> Geben wir jetzt beiden Optionen ein nicht vollständig klassifiziertes |
29 |
> Paket (d.h. ohne Versionsangabe) so müssten meiner Meinung nach beide |
30 |
> Optionen exakt das selbe tun. |
31 |
|
32 |
Probieren wir's aus: |
33 |
|
34 |
~ $ eix rpm2targz |
35 |
[U] app-arch/rpm2targz |
36 |
Available versions: 9.0-r2 9.0-r3 ~9.0-r4 9.0-r5 9.0-r6 |
37 |
Installed versions: 9.0-r5(10:46:21 11.11.2006) |
38 |
Homepage: http://www.slackware.com/config/packages.php |
39 |
Description: Convert a .rpm file to a .tar.gz archive |
40 |
|
41 |
~ $ emerge --pretend --update rpm2targz |
42 |
|
43 |
These are the packages that would be merged, in order: |
44 |
|
45 |
Calculating dependencies... done! |
46 |
[ebuild U ] app-arch/rpm2targz-9.0-r6 [9.0-r5] |
47 |
|
48 |
~ $ emerge --pretend --noreplace rpm2targz |
49 |
|
50 |
These are the packages that would be merged, in order: |
51 |
|
52 |
Calculating dependencies... done! |
53 |
[ebuild U ] app-arch/rpm2targz-9.0-r6 [9.0-r5] |
54 |
|
55 |
Deine Aussage stimmt also offensichtlich. |
56 |
Der von mir zitierte Teil der man page erwähnt allerdings mit keinem |
57 |
Wort, daß für --noreplace die Paketversion von Bedeutung sei. Welche |
58 |
Dokumentation habe ich übersehen? |
59 |
|
60 |
> Bei mir will ein |
61 |
> # emerge -nNDp world |
62 |
> genau das gleiche bauen, wie |
63 |
> # emerge -uNDp world |
64 |
|
65 |
Und vermutlich das gleiche, wie |
66 |
emerge -unNDp world |
67 |
bzw. wie beim OP |
68 |
emerge -avDunN world |
69 |
|
70 |
Das zusätzliche -n ist also in diesem Fall ein no-op. Wie nach der man |
71 |
page auch zu erwarten war, da das einzige auf der Kommandozeile |
72 |
angegebene "Paket" (world) sowieso nicht gebaut wird - ob mit oder ohne -n. |
73 |
|
74 |
> Daran liegt es also nicht. |
75 |
|
76 |
Liegt was nicht? Das vom OP beobachtete Phänomen? |
77 |
Daß das IMO nicht am --noreplace liegt, habe ich ja auch schon in dem |
78 |
Post geschrieben, auf den Du geantwortet hast. In dem Punkt sind wir uns |
79 |
sowieso einig. |
80 |
|
81 |
Gruß |
82 |
mks |
83 |
|
84 |
Nachtrag: Sowohl bei Angabe eines Paketes ohne Versionsspezifikation, |
85 |
das bereits in der neuesten Version installiert ist, als auch bei Angabe |
86 |
eines Paketes mit Versionsspezifikation, das bereits in der geforderten |
87 |
Version installiert ist, machen beide, also emerge --noreplace und |
88 |
emerge --update, bei mir nichts (portage 2.1.3.9). |
89 |
Was ist denn nun der Unterschied zwischen --noreplace und --update? |
90 |
|
91 |
-- |
92 |
gentoo-user-de@g.o mailing list |