Linker error, Dev-C++ – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Linker error, Dev-C++ – C / C++ – Fórum – Programujte.comLinker error, Dev-C++ – C / C++ – Fórum – Programujte.com

 

Andy
~ Anonymní uživatel
42 příspěvků
12. 12. 2010   #1
-
0
-

Ahoj,
chci pracovat s jednoduchou grafickou knihovnou, mám návod: http://www.cs.colorado.edu/~main/bgi/dev-c++/ , jenže
následující program:

#include <graphics.h>


int main( )
{
initwindow(400, 300, "First Sample");
circle(100, 50, 40);
while (!kbhit( ))
{
delay(200);
}
return 0;
}


stále hlásí tyto dvě chyby:
[Linker error] undefined reference to `std::string::_Rep::_S_empty_rep_storage'
[Linker error] undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'

Jak je odstranit?

Nahlásit jako SPAM
IP: 85.160.97.–
crAzY^
~ Moderátor
+10
Grafoman
12. 12. 2010   #2
-
0
-

musíš tu knihovnu přilinkovat...

Nahlásit jako SPAM
IP: 89.190.90.–
All you need is vision and time.
Andy
~ Anonymní uživatel
42 příspěvků
12. 12. 2010   #3
-
0
-

Takhle: Projekt -> Vlastnosti projektu -> Parametry -> pod částí Linker je Připojit knihovnu, vyberu libbgi.a ? Pokud ano, pak to nepomáhá.

Nahlásit jako SPAM
IP: 85.160.97.–
crAzY^
~ Moderátor
+10
Grafoman
12. 12. 2010   #4
-
0
-

a includujes i knihovny, které obsahují kbhit() a delay()??? kbhit je obsažen myslím v conio.h

Nahlásit jako SPAM
IP: 89.190.90.–
All you need is vision and time.
Andy
~ Anonymní uživatel
42 příspěvků
13. 12. 2010   #5
-
0
-

I s conio.h to hlásí stejné chyby.

A bez kbhit() a delay():

#include <graphics.h>


int main( )
{
initwindow(400, 300, "First Sample");
circle(100, 50, 40);

return 0;
}


je to to samé.

Nahlásit jako SPAM
IP: 85.160.66.–
liborb
~ Redaktor
+18
Guru
14. 12. 2010   #6
-
0
-
Nahlásit jako SPAM
IP: 78.80.52.–
Andy
~ Anonymní uživatel
42 příspěvků
14. 12. 2010   #7
-
0
-

Odkud odstraním -O2? Tady: Projekt -> Vlastnosti projektu -> Parametry -> v části Linker nic takového není.

Nahlásit jako SPAM
IP: 85.160.113.–
liborb
~ Redaktor
+18
Guru
14. 12. 2010   #8
-
0
-

To je nastavení optimalizace. Uvidíš tam asi vysvětlující texty místo označení.

Nahlásit jako SPAM
IP: 78.80.52.–
Andy
~ Anonymní uživatel
42 příspěvků
14. 12. 2010   #9
-
0
-

To nastavení optimalizace jsem našel, u všech položek je nastaveno "No". Tak je asi vypnuto i -O2 (z vysvětlujících textů u položek nepoznám, která -O2 nastavuje).

Nahlásit jako SPAM
IP: 85.160.113.–
Andy
~ Anonymní uživatel
42 příspěvků
14. 12. 2010   #10
-
0
-

Přidávám ještě výstup kompilátoru:


Compilátor: Default compiler
Building Makefile: "C:\Dev-Cpp\moje\Projekt2 grafika\Makefile.win"
Spouští se make...
make.exe -f "C:\Dev-Cpp\moje\Projekt2 grafika\Makefile.win" all

g++.exe -c main.cpp -o main.o -I"C:/DEV-CPP/include/c++/3.3.1" -I"C:/DEV-CPP/include/c++/3.3.1/mingw32" -I"C:/DEV-CPP/include/c++/3.3.1/backward" -I"C:/DEV-CPP/lib/gcc-lib/mingw32/3.3.1/include" -I"C:/DEV-CPP/include" g++.exe main.o -o "Projekt2.exe" -L"C:/DEV-CPP/lib" -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32

C:/DEV-CPP/lib/libbgi.a(winbgi.o)(.text+0xbd2):winbgi.cxx: undefined reference to `std::string::_Rep::_S_empty_rep_storage'

C:/DEV-CPP/lib/libbgi.a(winbgi.o)(.text+0x1b5e):winbgi.cxx: undefined reference to `std::string::_Rep::_S_empty_rep_storage'

C:/DEV-CPP/lib/libbgi.a(winbgi.o)(.text+0x1dcc):winbgi.cxx: undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'

C:/DEV-CPP/lib/libbgi.a(winthread.o)(.text+0x522):winthread.cxx: undefined reference to `std::string::_Rep::_S_empty_rep_storage'

C:/DEV-CPP/lib/libbgi.a(winthread.o)(.text+0x57e):winthread.cxx: undefined reference to `__gnu_cxx::__exchange_and_add(int volatile*, int)'

Provádění ukončeno

Nahlásit jako SPAM
IP: 85.160.113.–
liborb
~ Redaktor
+18
Guru
15. 12. 2010   #11
-
0
-

Tak jsem si to zkusil a hned na první pokus všechno šlape.

Jediný rozdíl, který vidím ve výpisech, je ten, že tam nemám "nestandardní" znaky typu '-' a mezera v názvech adresářů. A pak také verze (3.3.1 vs. 3.4.2).

Výpis:

Compilátor: Default compiler

Building Makefile: "D:\DevCpp\Projects\Makefile.win"
Spouští se make...
make.exe -f "D:\DevCpp\Projects\Makefile.win" all
g++.exe -c main.cpp -o main.o -I"D:/DevCpp/lib/gcc/mingw32/3.4.2/include" -I"D:/DevCpp/include/c++/3.4.2/backward" -I"D:/DevCpp/include/c++/3.4.2/mingw32" -I"D:/DevCpp/include/c++/3.4.2" -I"D:/DevCpp/include"

g++.exe main.o -o "Projekt1.exe" -L"D:/DevCpp/lib" -lbgi -lgdi32 -lcomdlg32 -luuid -loleaut32 -lole32

Provádìní ukonèeno
Kompilace dokonèena úspìšnì

Nahlásit jako SPAM
IP: 78.80.52.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 81 hostů

Podobná vlákna

Dev c++... Build error 1 — založil lokomotiva852

Build Error v Dev Cpp — založil becal

QT error: Error code 62097 — založil QtProgramming

DEv C++ — založil kotolna

Dev-c++ — založil sacha

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý