• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak skompilpować program napisany przy pomocy zewnętrznej biblioteki

Object Storage Arubacloud
0 głosów
159 wizyt
pytanie zadane 15 czerwca 2020 w C i C++ przez Śwież4k Bywalec (2,570 p.)
Skończyłem swoją pierwszą grę w sfmlu, ale nie wiem w jaki sposób ją skompilować tak aby po kliknięciu w plik exe można było ją uruchomić. Jak wchodzę do folderów Debug/bin/sfml.exe to mam napisane, że brakuje pewnych bibliotek. Ktoś mierzył się z podobnym problemem

2 odpowiedzi

0 głosów
odpowiedź 15 czerwca 2020 przez Michałełe Nałogowiec (25,600 p.)
Czy w folderze w którym masz plik .exe masz potrzebne dllki?
komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)
tak, ale mam alert że aplikacja nie została właściwie uruchomiona
komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)
Jak kompiluje plik c cdb to normlanie się uruchamia
komentarz 15 czerwca 2020 przez j23 Mędrzec (194,920 p.)

Pewnie nie wszystkie biblioteki wrzuciłeś. Jeśli używasz MinGW, to ten kompilator dołącza swoje biblioteki, które powinny być w katalogu z programem (albo dodaj katalog <MinGW>\bin do zmiennej PATH).

komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)

Dobra okazało się, że źle robiłem. Zmieniłem teraz z debug na release, ale nie mogę zbudować , ponieważ wyśietlają się takie błędy:

||=== Build: Release in sfml (compiler: GNU GCC Compiler) ===|
ld.exe||cannot find -lsfml-graphics|
ld.exe||cannot find -lsfml-audio|
ld.exe||cannot find -lsfml-network|
ld.exe||cannot find -lsfml-window|
ld.exe||cannot find -lsfml-system|
||error: ld returned 1 exit status|
||=== Build failed: 6 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

 

komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)
akurat wszystkie te dll "sfml-graphics"... itd. mam w tym samym folderze. Niby pozostaje linker, ale no bez linkowania by to nawet przecież nie działało w trybie debug
komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)

@j23, doszedłem do tego że kompilator z jakiegoś powodu nie widzi bilbliotek dll tych do release

komentarz 15 czerwca 2020 przez j23 Mędrzec (194,920 p.)

Pewnie konfiguracja projektu dla Release jest inna niż dla Debug. Sprawdź, czy jest ustawiony katalog z bibliotekami SFML dla Release.

 

komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)

chodzi o to okienko "Link libraries"? Mam tam przy opcji debug 

sfml-network-d-2.dll

sfml-graphics-d-2.dll

sfml-system-d-2.dll

sfml-audio-d-2.dll

sfml-window-d-2.dll 

W Release to samo tylko bez litery d
 

komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)

@j23, nwm czy to o to chodziło?

komentarz 15 czerwca 2020 przez j23 Mędrzec (194,920 p.)

Chodziło mi bardziej o ścieżkę do katalogu z tymi dll-kami. Z jakichś powodów konsolidator ich nie widzi, więc podejrzewam, że nie wie, gdzie one leżą.

Katalog do bibliotek ustawiasz w: Opcje projektu ► Search directories ► Linker.

komentarz 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)

@j23, Rzeczywiście, udało się skompilować w wersji release, ale jak wejdę do katalogu Release to nie mogę uruchomić pliku .exe. Nawet jak dodam biblioteki które wyskakują w alertach to na koniec jest alert że aplikacja została niewłaściwie uruchomiona

komentarz 15 czerwca 2020 przez j23 Mędrzec (194,920 p.)

Dodałeś do PATH ścieżkę, o której pisałem?

0 głosów
odpowiedź 15 czerwca 2020 przez Śwież4k Bywalec (2,570 p.)
bump

Podobne pytania

0 głosów
2 odpowiedzi 296 wizyt
0 głosów
2 odpowiedzi 125 wizyt
0 głosów
1 odpowiedź 809 wizyt

92,579 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...