Betriebssysteme: Vergleiche

Das "Flamewar"-Forum

Die legendären Flamewars auf heise online haben ein Zuhause gefunden. Hier haben Sie die Gelegenheit darzustellen, warum Sie ein bestimmtes OS für das Beste halten. Einen Sieger wird dieses Forum zwar nie ermitteln, aber wir freuen uns auf das redliche Bemühen, die Frage endgültig zu klären.

31. Januar 2013 20:44

Re: Nochmals dieses supertolle Tool vom Weltmarktführer

Die Komponenten von VisualStudio sind nur bedingt darauf ausgelegt
"anders als vorgesehen" verwendet zu werden.

Ich hatte es seinerzeit bei Express 2010 auch geschafft z.B. dem
Linker "internal error" zu entlocken weil ich ihn halt nicht von
MSBuild sondern meinem CSBuilder aus aufgerufen habe, und ihm die Art
und Weise wie ich die Kommandozeilenparameter verwendet habe nicht
gefallen hat. Hat eine Weile gedauert bis ich es raus hatte was er
haben will; ob der 2012er Linker das auch noch so spezifisch haben
will weiß ich aber nicht -- er hat sich nie über meine Aufrufe
beschwert, daher ist alles noch so wie zu 2010er-Zeiten. Ähnliches
gilt z.B. auch für den VisualC++ Compiler; der performed auch am
besten wenn man die Parameter in einer bestimmten Weise verwendet,
was dann wohl der MSBuild Umgebung entsprechen dürfte...

Microsoft verwendet auch nicht bei allen Tools diesselben
Konventionen. So ist es durchaus üblich daß die Tools das @Filename
Kommandozeilenargument kennen, um die arg knappe Begrenzung der
Parameterlänge zu umgehen (@Filename fügt Kommandzeilenargumente aus
einer Datei ein). Lediglich der fxc (Shader-Compiler) flippte
irgendwie aus und ignorierte das Ding, obwohl eine testweise manuell
angelegte Datei funktionierte.
Das Rätsel löste sich erst als ich die von meiner Software angelegte
Datei etwas editieren wollte, und dazu den emacs unter Linux
verwendet habe: es stellte sich heraus daß ich diese Dateien der
Einfachheit halber als UTF-16 schreibe, und der fxc genau das nicht
lesen konnte -- und 0-Bytes wie sie bei UTF-16 ständig vorkommen
vertragen sich nicht wirklich mit Programmen die ein 8-Bit Encoding
erwarten :-) Ich weiß heute noch nicht ob er Codepage oder UTF-8
will; nehme derzeit Codepage.
[ Ob auch die Escape-Regeln etwas anders sind weiß ich nicht mehr;
ich hab ewig viel rumprobiert, und kann aus dem Stegreif nicht sagen
was dann in der Software gelandet ist ]

Das ist halt so eine Sache mit IDEs; die sind erstmal darauf
ausgelegt "mit sich selber" zu arbeiten. Bei Linux oder MacOS ist das
etwas relaxter, weil sie da die IDEs größtenteils nur um externe
Tools drumrumbastlen. Entsprechend waren g++ und clang++ auch weniger
hochnäsig was die Kommandozeilenargumente angeht.

Christian

Anzeige

heise online Themen