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

[Allegro] Pojedynczy plik źródłowy

Ostatnio zmodyfikowano 2009-09-03 19:36
Autor Wiadomość
Rudy
Temat założony przez niniejszego użytkownika
[Allegro] Pojedynczy plik źródłowy
» 2009-09-02 22:33:16
Witam.

Temat może nie do końca stuprocentowy do treści ale między innymi o to chodzi :)

Otóż... Ściągłem niedawno Allegro i chciałem zacząć z nim pracować. Jak większości użytkowników Allegro robi "chrzest programisty" i tworzy losowy błąd kompilacji. U mnie trafiło na "[Linker error]...". Poczytałem co nieco i znalazłem rozwiązanie problemu - Projekt/Opcje projektu/Pliki nagłówkowe. Ale to jest dostępne tylko, gdy działa się na projekcie, a co gdybym chciał na pojedynczym pliku źródłowym?

{Błąd naprawiony} W międzyczasie postanowiłem że przestanę być taki wybredny (w końcu trzeba dorośleć do projektów), po czym utworzyłem projekt allegro static. Zrobiłem to, co powinienem zrobić z plikami nagłówkowymi, po czym odpaliłem. Działało. Wziąłem się więc za naukę i wkleiłem kolejny kod z tutoriala. Działało. Problem tylko w tym, że to nie był ten kod, tylko ten co wyskoczył na początku (poznałem po działaniu programu). Macie może jakieś szalone pomysły jak to naprawić?
P-10022
GoldWolf
» 2009-09-02 22:49:45
Trochę tego dużo nie wiem czy zjażyłem.
Po pierwsze próbowałem środowiska Code:B -> lepsze jest od dev(w wersji podstawowej).
Po drugie, gdzie Ty masz zainstalowanego tego Dev-a?
Po trzecie w większości znaczących środowisk tworzy się projekt.

PS jeśli zdecydujesz się na zainstalowanie Coda to w kursie znajdziesz instrukcje co i jak, jeśli nie to wrzuć kod programu i błędy jakie się pokazują.
P-10024
DejaVu
» 2009-09-02 22:53:31
Przeczytałem może jedno zdanie z tego całego posta i moją odpowiedzią jest:
http://forum.ddt.pl/?Tid=444
P-10026
Rudy
Temat założony przez niniejszego użytkownika
» 2009-09-02 22:58:06
Toteż napisałem, żeby reszty nie czytać, bo może się pomieszać ;P

1. Code:B nie próbowałem, nie mam, nie zamierzam próbować (na Dev C++ też musi się jakoś dać to zrobić)
2. Na "E:/Dev-Cpp/"
3. Czyli nie ruszę z Allegro bez utworzenia projektu?

Kod z tutoriala:
C/C++
#include <allegro.h>
int main()
{
    allegro_init();
    install_keyboard();
    set_color_depth( 8 );
    set_gfx_mode( GFX_AUTODETECT, 800, 600, 0, 0 );
    set_palette( default_palette );
    clear_to_color( screen, 48 );
    textout_ex( screen, font, "Witaj w Allegro !", 20, 20, makecol( 255, 0, 255 ), - 1 );
   
    readkey();
   
    allegro_exit();
    return 0;
}
END_OF_MAIN();

Log: (w skrócie kompilator znajduje każdą funkcję allegro i pisze błąd z dopiskiem: "[Linker error] undefined reference to "
Kompilator: Default compiler
Wykonywanie  g++.exe...
g++.exe "E:\Dev-Cpp\first steps\BezNazwy1.cpp" -o "E:\Dev-Cpp\first steps\BezNazwy1.exe"   -pg -g3  -I"E:\Dev-Cpp\lib\gcc\mingw32\3.4.2\include"  -I"E:\Dev-Cpp\include\c++\3.4.2\backward"  -I"E:\Dev-Cpp\include\c++\3.4.2\mingw32"  -I"E:\Dev-Cpp\include\c++\3.4.2"  -I"E:\Dev-Cpp\include"   -L"E:\Dev-Cpp\lib" -lgmon -pg  -g3
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x31): In function `Z13_mangled_mainv':
E:/Dev-Cpp/first steps/BezNazwy1.cpp:4: undefined reference to `_install_allegro_version_check'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x36):E:/Dev-Cpp/first steps/BezNazwy1.cpp:5: undefined reference to `install_keyboard'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x42):E:/Dev-Cpp/first steps/BezNazwy1.cpp:6: undefined reference to `set_color_depth'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x6e):E:/Dev-Cpp/first steps/BezNazwy1.cpp:7: undefined reference to `set_gfx_mode'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x73):E:/Dev-Cpp/first steps/BezNazwy1.cpp:8: undefined reference to `_imp__default_palette'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x7b):E:/Dev-Cpp/first steps/BezNazwy1.cpp:8: undefined reference to `set_palette'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x88):E:/Dev-Cpp/first steps/BezNazwy1.cpp:9: undefined reference to `_imp__screen'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0xae):E:/Dev-Cpp/first steps/BezNazwy1.cpp:10: undefined reference to `makecol'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0xd7):E:/Dev-Cpp/first steps/BezNazwy1.cpp:10: undefined reference to `_imp__font'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0xe2):E:/Dev-Cpp/first steps/BezNazwy1.cpp:10: undefined reference to `_imp__screen'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0xec):E:/Dev-Cpp/first steps/BezNazwy1.cpp:10: undefined reference to `textout_ex'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0xf1):E:/Dev-Cpp/first steps/BezNazwy1.cpp:12: undefined reference to `readkey'
C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0xf6):E:/Dev-Cpp/first steps/BezNazwy1.cpp:14: undefined reference to `allegro_exit'

C:\DOCUME~1\Komputer\USTAWI~1\Temp/ccKUaaaa.o(.text+0x164): In function `WinMain':
E:/Dev-Cpp/first steps/BezNazwy1.cpp:17: undefined reference to `_WinMain'
collect2: ld returned 1 exit status

Wykonanie zakończone

EDIT do P. Piotra: także byłem na tej stronie ;) . Opcje projektu są dostępne tylko, gdy jest projekt, nie plik źródłowy. Natomiast jeśli chodzi o problem z projektem, nie rozumiałem tak profesjonalnego języka (miejsc, gdzie pisze Konsolidator można znaleźć wiele w opcjach projektu, pomógł mi dopiero temat "Instalacja allegro5", z nudów przeglądałem i tam znajazłem odpowiedź. Pozostał jeszcze problem z plikiem źródłowym)
P-10027
DejaVu
» 2009-09-02 23:45:42
W kursie C++ masz napisane gdzie te opcje można znaleźć http://kursy.ddt.pl/?LessonId=118.

/edit:
Widzę, że zrobiłeś drastyczne zmiany w pierszym poście. Nie wiem o co Ci teraz za bardzo chodzi jeśli piszesz (chyba), że aplikacja allegro Ci się odpala.
P-10029
Rudy
Temat założony przez niniejszego użytkownika
» 2009-09-03 08:23:37
Cóż... chciałem wprowadzić do mojej wypowiedzi trochę humoru i jedną ciekawostkę, ale wyszło, że przez to zagmatwałem całą wypowiedź. Dlatego skróciłem to do najważniejszych informacji

Obecnie chodzi mi o to, że allegro odpala tylko w projekcie (po drobnej modyfikacji projektu). Ja natomiast chciałbym go odpalić w pojedynczym pliku źródłowym. Chciałem się więc zapytać, czy da się, a jak tak, to jak?
P-10031
DejaVu
» 2009-09-03 17:20:06
Możesz mieć jeden plik źródłowy ale musisz mieć projekt.
P-10038
Rudy
Temat założony przez niniejszego użytkownika
» 2009-09-03 19:36:07
Tego chciałem się dowiedzieć. Dzięki  za pomoc, zamykam.
P-10045
« 1 »
  Strona 1 z 1