Discussion:
"error -fpic ignored" was kann das sein?
(zu alt für eine Antwort)
Edzard Egberts
2017-01-30 10:46:02 UTC
Permalink
Ich versuche gerade Software unter Win7-32bit mit MinGW zu compilieren.
Unter Linux lief das ohne Probleme durch, mit MinGW bekomme ich solche
Meldungen:

"
building FileName.o :
FileName.cpp:1:0: error: -fpic ignored for target (all code is position
independent) [-Werror]
/**************************************
^

cc1plus.exe: all warnings being treated as errors.
"

"FileName" ist natürlich ein Dummy-Name, aber auf den Namen kommt es
nicht an, weil ich dutzende Fehlermeldungen habe, die bis auf den Namen
der Datei gleich sind. Der angezeigte Fehlerort ist immer die erste
Zeile der Datei, egal ob es sich um ein Comment (siehe oben) oder ein
#include handelt.

Was geht da schief und was ist "-fpic", das findet noch nicht einmal
Google. Wie löse ich das Problem?
Stefan Kanthak
2017-01-30 11:33:36 UTC
Permalink
Post by Edzard Egberts
Ich versuche gerade Software unter Win7-32bit mit MinGW zu compilieren.
Lass es beim Versuch!
Es gibt schon genuegend Schrott fuer Windows, Du musst Deinen nicht
auch noch dazustellen.
Post by Edzard Egberts
Unter Linux lief das ohne Probleme durch, mit MinGW bekomme ich solche
UDIAGS: die Software sagt Dir, dass sie fuer Windows ungeeignet ist.

JFTR: richtige Windows-Software verwendet keine libc, sondern das
Win32 API.
Post by Edzard Egberts
"
FileName.cpp:1:0: error: -fpic ignored for target (all code is position
independent) [-Werror]
/**************************************
^
cc1plus.exe: all warnings being treated as errors.
"
[...]
Post by Edzard Egberts
Was geht da schief
PEBKAC hat -Werror angegeben.
Post by Edzard Egberts
und was ist "-fpic", das findet noch nicht einmal Google.
"position independent code" ist typischer "cargo cult".
Frag den Verbrecher des betreffenden Makefile, wieso er seit Jahren
nichts dazugelernt hat.
Post by Edzard Egberts
Wie löse ich das Problem?
Altherthuemliche Software mit altherthuemlichen Makefiles wegwerfen.

Stefan
[
--
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)
Edzard Egberts
2017-01-30 12:37:45 UTC
Permalink
Post by Edzard Egberts
Ich versuche gerade Software unter Win7-32bit mit MinGW zu
compilieren.
Lass es beim Versuch! Es gibt schon genuegend Schrott fuer Windows,
Du musst Deinen nicht auch noch dazustellen.
Ich kann nichts dafür, der Kunde will den haben! Der will ja auch
Windows nutzen...
"position independent code" ist typischer "cargo cult". Frag den
Verbrecher des betreffenden Makefile, wieso er seit Jahren nichts
dazugelernt hat.
Post by Edzard Egberts
Wie löse ich das Problem?
Altherthuemliche Software mit altherthuemlichen Makefiles wegwerfen.
Danke, ich wusste nicht, wo das hin gehört und habe jetzt die Option im
makefile gefunden. Gelöscht und sieht gleich viel besser aus! :o)

Die Sourcen sind übrigens brandneu, experimentell und für den Raspi -
dass das klappt, habe ich gar nicht erwartet, sondern nur, dass ich mit
den Fehlermeldungen etwas anfangen kann. :o/
Claus Reibenstein
2017-01-30 11:44:36 UTC
Permalink
Post by Edzard Egberts
FileName.cpp:1:0: error: -fpic ignored for target (all code is position
independent) [-Werror]
Der Compiler hat die Option -fpic ignoriert ...
Post by Edzard Egberts
cc1plus.exe: all warnings being treated as errors.
... und diese Warnung wegen der Option -Werror als Fehler eingestuft.
Post by Edzard Egberts
Was geht da schief und was ist "-fpic", das findet noch nicht einmal
Google. Wie löse ich das Problem?
Warum sollte Google die Optionen des von Dir verwendeten Compilers
kennen? Hierzu schaut man in die Doku der verwendeten Werkzeuge.

Gruß
Claus
Edzard Egberts
2017-01-30 12:41:29 UTC
Permalink
Post by Claus Reibenstein
Post by Edzard Egberts
Was geht da schief und was ist "-fpic", das findet noch nicht einmal
Google. Wie löse ich das Problem?
Warum sollte Google die Optionen des von Dir verwendeten Compilers
kennen? Hierzu schaut man in die Doku der verwendeten Werkzeuge.
Der kannte die Option ja gerade nicht und ich dachte, dass mir Google
sagen kann, welcher Compiler die kennt und was das im Detail bewirken
soll. "make --help" kannte das auch nicht und erst der Tipp vom Stefan
hat dazu geführt, dass ich die relevante Unterdatei des Makefiles
gefunden habe. Jetzt mal weiter sehen, Jugend forscht... ;o)
Heinz Schmitz
2017-04-25 08:51:41 UTC
Permalink
Post by Claus Reibenstein
Post by Edzard Egberts
Was geht da schief und was ist "-fpic", das findet noch nicht einmal
Google. Wie löse ich das Problem?
Warum sollte Google die Optionen des von Dir verwendeten Compilers
kennen? Hierzu schaut man in die Doku der verwendeten Werkzeuge.
Bei aller Anerkennung für die Leistungen der Open-Source- und
Freeware-Programmierer: Die Dokus sind manchmal nur für DIE
verständlich, die sie nicht mehr brauchen.
Da kann eine Google-Abfrage sehr helfen, zumal meist auch
Andere das Problem schon hatten und eine Erklärung von Nerds
bekommen haben, die man auch verstehen kann.

Grüße,
H.

Stefan Reuther
2017-01-30 16:50:39 UTC
Permalink
Post by Edzard Egberts
FileName.cpp:1:0: error: -fpic ignored for target (all code is position
independent) [-Werror]
[...]
Post by Edzard Egberts
Was geht da schief und was ist "-fpic", das findet noch nicht einmal
Google. Wie löse ich das Problem?
(a) google nicht nach "-fpic", "-" schließt das von der Suche aus oder
so. Google z.B. nach etwas wie "gcc option fpic". Das bringt mir an
zweiter und dritter Stelle das gcc-Manual.

(b) der gcc mag die Option "-fpic" nicht, und irgendwer hat ihm gesagt,
er möge daraufhin die Übersetzung abbrechen ("-Werror"). Also durchsuche
einfach alle deine Makefiles oder den ganzen Quellbaum danach, wer das
tut, und editier das weg. Natürlich wieder nicht mit "grep -fpic",
sondern mit "grep -e -fpic" :-)


Stefan
Edzard Egberts
2017-01-31 06:53:18 UTC
Permalink
Post by Stefan Reuther
Post by Edzard Egberts
FileName.cpp:1:0: error: -fpic ignored for target (all code is position
independent) [-Werror]
[...]
Post by Edzard Egberts
Was geht da schief und was ist "-fpic", das findet noch nicht einmal
Google. Wie löse ich das Problem?
(a) google nicht nach "-fpic", "-" schließt das von der Suche aus oder
so.
Verdammt, darauf muss man erst einmal kommen, guter Tipp!

Das mit "-fpic" ist gelöst und die Sache baut schon zum größten Teil.
Scheint noch (mindestens) ein Header zu fehlen und beim Linken habe ich
noch undefined References, aber jetzt geht es voran.
Loading...