.pro platformabhängige Einträge

Verschiedenes zu Qt
Antworten
skeemo
Beiträge: 39
Registriert: 8. Oktober 2010 09:39

.pro platformabhängige Einträge

Beitrag von skeemo »

Hi,

ich schreibe gerade eine Crossplattform Anwedung.
Dabei binde ich eine externe Bibliothek ein mittels

Code: Alles auswählen

INCLUDEPATH+= /pfad/usw
LIBS+= -L usw/undsofort
Momentan entwickel ich auf Windows, die Pfade von include und libs beziehen sich logischerweise relativ auf das build Verzeichnis.

Bevor die externe Bibliothek eingebunden wurde, hatte ich die Anwendung schonmal auf Linux kompiliert, was auch problemlos ging.

Unter Linux wird meine Bibliothek aber (vermutlich) dann woanders liegen, darum wäre es gut, wenn ich meinen INCLUDEPATH plattformabhängig machen könnte.

Kann man das irgendwie machen ?

Gruß

Chris
brax
Beiträge: 208
Registriert: 11. Mai 2010 11:22

Re: .pro platformabhängige Einträge

Beitrag von brax »

ja das geht:

win32 {
# mach windows zeug
} else {
# mach linux zeug
}

Mehr zu qmake:
http://doc.trolltech.com/4.6/qmake-manual.html bzw. http://doc.trolltech.com/4.7/qmake-manual.html
skeemo
Beiträge: 39
Registriert: 8. Oktober 2010 09:39

Re: .pro platformabhängige Einträge

Beitrag von skeemo »

Cool danke :)
skeemo
Beiträge: 39
Registriert: 8. Oktober 2010 09:39

Re: .pro platformabhängige Einträge

Beitrag von skeemo »

Bin erst jetzt dazu gekommen...

Das geht so nicht.
Gibt einen "Parser Error"
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: .pro platformabhängige Einträge

Beitrag von Christian81 »

skeemo hat geschrieben: Das geht so nicht.
Gibt einen "Parser Error"
Wie wäre es mit Eigeninitiative und Doku lesen? Brax hat ja nicht umsonst die Links gepostet...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
skeemo
Beiträge: 39
Registriert: 8. Oktober 2010 09:39

Re: .pro platformabhängige Einträge

Beitrag von skeemo »

Ähm, das war nur ein Hinweis.
Ich habe es schon selber herausbekommen :roll:
brax
Beiträge: 208
Registriert: 11. Mai 2010 11:22

Re: .pro platformabhängige Einträge

Beitrag von brax »

Da ich etwas irritiert bin, warum das bei Dir nicht funktioniert hat (fast alle unsere .pro bzw. .pri files enthalten so ziemlich genau die von mir geposteten Zeilen und funktionieren sowohl mit 4.6.x als auch mit 4.7.x absolut problemlos), wärst Du noch so freundlich zu schreiben, wie Du es denn hinbekommen hast, bzw. was das Problem war?
skeemo
Beiträge: 39
Registriert: 8. Oktober 2010 09:39

Re: .pro platformabhängige Einträge

Beitrag von skeemo »

Gerne:

ich kennzeichne die Zeilen (zumindest die INCLUDEPATH und LIBS-Zeilen) folgendermassen :

Code: Alles auswählen

win32:INCLUDEPATH+= /pfad/usw
win32:LIBS+= -L usw/undsofort

unix:INCLUDEPATH+= /pfad/usw
unix:LIBS+= -L usw/undsofort

Komisch ist, dass in der qMake Doku beide Varianten auftauchen...
brax
Beiträge: 208
Registriert: 11. Mai 2010 11:22

Re: .pro platformabhängige Einträge

Beitrag von brax »

Komisch ist eher, adss bei Dir die andere Variante nicht funktioniert.

Die (vollkommen sinnfreie) pro Datei

Code: Alles auswählen

win32 {
	message(im win32 zweig)
} else {
	message(unreachable in current arch)
}

win32: message(win32 2)
unix: message(unreachable in current arch)
Ergibt bei mir (auf windows) folgende Ausgabe:
D:\foo>qmake
Project MESSAGE: im win32 zweig
Project MESSAGE: win32 2
Aber die Hauptsache ist wohl, dass es nun auf die eine oder andere Weise auch bei Dir funktioniert.
Antworten