Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z grą po zainstalowaniu windowsa 7

Ostatnio zmodyfikowano 2013-04-03 19:34
Autor Wiadomość
m4tx
» 2013-04-03 18:42:59
Taa? :)
ogram Files (x86)\Dev-Cpp\MinGW32\lib" -static-libstdc++ -static-libgcc -Wall -Wextra
Widać jak byk że to MinGW (albo raczej jego część) kompiluje a nie Dev.
Jeszcze jedna uwaga: to, że se wstawiasz takie opcje do linkera to nie oznacza, że są one respektowane przez niego.
-Wall
 i
-Wextra
 to opcje kompilatora i wstawianie ich do linkera w tym przypadku nie ma najmniejszego sensu.
P-79859
mactec
» 2013-04-03 19:10:27
Widać jak byk że to MinGW (albo raczej jego część) kompiluje a nie Dev.
No tak, kompiluję Devem z mingw'em.

Jeszcze jedna uwaga: to, że se wstawiasz takie opcje do linkera to nie oznacza, że są one respektowane przez niego. -Wall i -Wextra to opcje kompilatora i wstawianie ich do linkera w tym przypadku nie ma najmniejszego sensu.
No to jak wytłumaczysz to: http://screenshooter.net/4216937/ebymywh

Dodałem w linkerze a działa.

A tak wogóle większość IDE działa tak: wywołuje kompilator (w moim przypadku Mingw)a w jego  parametrach daje pliki do skompilowania i rożne inne opcje(np. linkera)
np.
To jest Log Kompilacji z Deva, w linkerze dodałem
-Wall -Wextra

g++.exe "C:\Users\mactec\Desktop\Untitled1.cpp" -o "C:\Users\mactec\Desktop\Untitled1.exe"   -I"C:\Program Files (x86)\Dev-Cpp\MinGW32\include"  -L"C:\Program Files (x86)\Dev-Cpp\MinGW32\lib" -static-libstdc++ -static-libgcc -Wall -Wextra
Jak widzisz podczas kompilowania w parametrach masz
-Wall -Wextra
 i to nie ma znaczenia że dodałem to do linkera bo i tak kompilator to uwzględnia.
P-79862
m4tx
» 2013-04-03 19:18:35
A tak wogóle większość IDE działa tak: wywołuje kompilator (w moim przypadku Mingw)a w jego  parametrach daje pliki do skompilowania i rożne inne opcje(np. linkera)
Brawo, przez ostatnie kilka postów próbowałem Ci to udowodnić.

Jak widzisz podczas kompilowania w parametrach masz
-Wall -Wextra
 i to nie ma znaczenia że dodałem to do linkera bo i tak kompilator to uwzględnia.
Nie ma znaczenia, bo jest tylko jeden plik, więc można za jednym zamachem skompilować i podlinkować. Zupełnie inna sytuacja jest, gdy chcemy skompilować i linkować kilka plików .cpp. Wtedy IDE N (gdzie N - liczba plików do skompilowania) wywołuje kompilator, który tworzy pliki .o, a potem 1 raz linker, który składa to wszystko do kupy (czyli po prostu tworzy plik .exe, wykonywalny ELF lub inny, w zależności od platformy i upodobań programisty). Wtedy, gdy dasz wspomniane opcje do linkera, całość może się zachować całkowicie inaczej. I prawdopodobnie kompilator nie otrzyma wtedy tych opcji, które tak bardzo chciałeś mu podać.
P-79864
mactec
» 2013-04-03 19:34:18
Brawo, przez ostatnie kilka postów próbowałem Ci to udowodnić.
A Ci również.

Nie ma znaczenia, bo jest tylko jeden plik, więc można za jednym zamachem skompilować i podlinkować. Zupełnie inna sytuacja jest, gdy chcemy skompilować i linkować kilka plików .cpp. Wtedy IDE N (gdzie N - liczba plików do skompilowania) wywołuje kompilator, który tworzy pliki .o, a potem 1 raz linker, który składa to wszystko do kupy (czyli po prostu tworzy plik .exe, wykonywalny ELF lub inny, w zależności od platformy i upodobań programisty). Wtedy, gdy dasz wspomniane opcje do linkera, całość może się zachować całkowicie inaczej. I prawdopodobnie kompilator nie otrzyma wtedy tych opcji, które tak bardzo chciałeś mu podać.
No to tutaj już zależy jak to wszystko będzie IDE wywoływało, bo jest możliwość, że było by dobrze.
g++ -c plik1.cpp plik2.cpp
g++ -o plik1.o plik2.o  -opcje linkera
No i wtedy się skompiluje bez problemów, no ale są też możliwości że Ci się nie skompiluje i będzie błąd(czyli to o czym ty mówiłeś), dlatego najlepiej jest kompilować wszystko samemu, zawsze ma się większą kontrolę :).
P-79866
1 « 2 »
Poprzednia strona Strona 2 z 2