PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : GCC im Eimer



tuxipuxi
12-01-2003, 10:47
hallo,

es war jetzt an der zeit, mein Qt upzudaten.
Ich hatte die Version 3.0.5 und habe mir dann die Version 3.1.1 runtergeladen.
Ich ging ganz normal vor:
tarball entpacken,
in das verzeichnis wechseln und habe dann erstmal ./configure gestartet.
Alles lied problemlos.
dann kam die meldung:
"Qt is now configured. run gmake now"
ok, also habe ich gmake gestartet.
Auch dies lief ohne fehler ab.

So, nur jetzt gehts leider los:
ich wollte natuerlich ausprobieren wie das neue denn so ist, und habe deswegen probiert einen ( fehlerfreien ) code zu kompilieren.

Die Fehlermeldungen habe ich angaehaengt, weil die etwas zu lang sind fuer's vbulletin.

bisherige versuche:

-gcc ueber rpm neuinstallieren -- hat nichts verbesssert.
-Qt neuinstallieren -- auch nicht.
-pthread.h durch funktionierende ersetzen -- auch nicht.
-ganz toll fluchen :) -- auch nicht.

Es handelt sich um Mandrake 9 mit bisherig GCC 2.95-3 und jetzt 3.21.

Waere sehr froh ueber vorschlaege wie ich das wieder hinbekomme.

Gruss Michael

p.s: danke anda_skoa, hat aber wie oben gesagt nichts gebracht.

brotzi
12-01-2003, 11:18
was geben denn die folgenden befehle aus?

gcc --version
g++ --version
c++ --version

tuxipuxi
12-01-2003, 11:38
Original geschrieben von brotzi
was geben denn die folgenden befehle aus?

gcc --version
gcc (GCC) 3.2 (Mandrake Linux 9.0 3.2-1mdk)
g++ --version
g++ (GCC) 3.2 (Mandrake Linux 9.0 3.2-1mdk)

c++ --version
[tuxipuxi@linux tuxipuxi]$ c++ --version
bash: c++: command not found
[tuxipuxi@linux tuxipuxi]$
( c++ gibt's AFAIK auch garnet )

brotzi
12-01-2003, 12:51
Hmmm, ich dachte da liegt noch was vom 2.95-er rum. Merkwürding ist aber, daß die Zeilennummern in der pthread.h von deinem Listing und bei mir (habe auch mdk9) nicht übereinstimmen.
Ich hätte auch sonst noch ein paar Fragen:
1. Du hast zunächst Mdk9 mit gcc2.95 installiert, und dann die gcc3.2-Pakete drübergebügelt?
2. Konntest du nach (1) noch kompilieren?
3. Die ganzen Probleme sind erst aufgetaucht, nachdem du das neue qt kompiliert hast?
4. Hast du mal probiert ein wirklich simples c++(nur ne main mit hello world oder so) - und danach ein ebenso simples qt(nur ein qapplication und ein qwidget erzeugen) - programm zu kompilieren?

Bem: für gcc3.2 sind einige Header, insbesondere iostream.h geändert worden. wenn Du einfach #include <iostream.h> machst solltest du z.B. (wenn alles korrekt installiert ist) eine Backward-Warning bekommen.

tuxipuxi
12-01-2003, 13:43
1. ja
2. nein
3. ja
4. hab ich schon, klappt net. die fehler kommen von hello world.

brotzi
12-01-2003, 14:02
Dann probier doch mal (4) ohne die Verwendung von iostream. Nimm mal einfach printf(und das include zu iostream natürlich rauswerfen). Ich vermute nämlich, daß mit den Headern entweder von iostream oder pthread was nicht stimmt.

Fast vergessen: Bei deinem vorigen Versuch zu (4) kam da sowas, daß er mit cout nichts anfangen kann? Wenn ja, schreib mal "using namespace std;" gleich nach dem include oder schreib mal sowas: std::cout << "hello world;".

tuxipuxi
18-01-2003, 10:58
soooo,

hab jetzt gcc und so plattgemacht und neuinstalliert.
fehler haben sich schon auf 1/3 verkleinert.
problem jetzt:



[tuxipuxi@linux tuxipuxi]$ g++ test.cpp
/lib/libc.so.6: undefined reference to `_dl_lazy@GLIBC_2.1.1'
/lib/libc.so.6: undefined reference to `_dl_dst_substitute@GLIBC_2.1.1'
/lib/libc.so.6: undefined reference to `_dl_out_of_memory@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_relocate_object@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_clktck@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `__libc_enable_secure@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_catch_error@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_platformlen@GLIBC_2.1.1'
/lib/libc.so.6: undefined reference to `_dl_lookup_versioned_symbol_skip@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_lookup_versioned_symbol@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_dst_count@GLIBC_2.1.1'
/lib/libc.so.6: undefined reference to `_dl_initial_searchlist@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_start_profile@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_lookup_symbol@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `__libc_stack_end@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_argv@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_loaded@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_origin_path@GLIBC_2.1.1'
/lib/libc.so.6: undefined reference to `_dl_check_map_versions@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_map_object@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_main_searchlist@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_debug_mask@GLIBC_2.2.3'
/lib/libc.so.6: undefined reference to `_dl_load_lock@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_profile@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_debug_state@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_init_all_dirs@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_unload_cache@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_signal_error@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_debug_printf@GLIBC_2.2.3'
/lib/libc.so.6: undefined reference to `_dl_init@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_all_dirs@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_map_object_deps@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_nloaded@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_profile_map@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_profile_output@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_pagesize@GLIBC_2.2'
/lib/libc.so.6: undefined reference to `_dl_lookup_symbol_skip@GLIBC_2.0'
/lib/libc.so.6: undefined reference to `_dl_fpu_control@GLIBC_2.1'
/lib/libc.so.6: undefined reference to `_dl_global_scope_alloc@GLIBC_2.1'
collect2: ld returned 1 exit status
[tuxipuxi@linux tuxipuxi]$


nun hab ich versucht die pakete wo libc drin enthalten ist zu entfernen.
aber das waere nicht von vorteil, weil durch die abhaengigkeiten dann sogar XFree entfernt werden muesste.

jemand ne idee?

gruss michael