include, kako?

include, kako?

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Verovatno je banalno pitanje ali imam problema sa ukljucivanjem biblioteka.

Stavim npr:

#include "curl.h"

i sve se lepo iskompajlira ali kad treba da idem na build izbaci mi ovakve greske:

Compiling resources... Linking... crClass.obj : error LNK2019: unresolved external symbol __imp__curl_easy_cleanup referenced in function "enum CURLcode __cdecl grabPage(char *)" (?grabPage@@YA?AW4CURLcode@@PAD@Z) crClass.obj : error LNK2019: unresolved external symbol __imp__curl_easy_perform referenced in function "enum CURLcode __cdecl grabPage(char *)" (?grabPage@@YA?AW4CURLcode@@PAD@Z) crClass.obj : error LNK2019: unresolved external symbol __imp__curl_easy_setopt referenced in function "enum CURLcode __cdecl grabPage(char *)" (?grabPage@@YA?AW4CURLcode@@PAD@Z) crClass.obj : error LNK2019: unresolved external symbol __imp__curl_easy_init referenced in function "enum CURLcode __cdecl grabPage(char *)" (?grabPage@@YA?AW4CURLcode@@PAD@Z)
Znaci kad treba da pozove f-je te biblioteke on se zbuni. Bebee Dol

Stavio sam da curl.h bude u istom dir-u kao i moj projekat a dll sam stavio i u system32 i u isti dir i opet nista.
Nije samo problem u ovom curl.h, mnogo drugih biblioteka izbacuje isto.
A ono sto me najvise muci je sto iostream ne radi. Lepo napisem:
#include <iostream>

i kad posle koristim cout i cin uopste ih ne prepoznaje...
error C2065: 'cout' : undeclared identifier!!!
A napisem bas kao sto pise u MSDN-u.

Verovatno gresim u necemu osnovnom ili nisam nesto podesio.
Imam Visual Studio 2005 na XP-u sp2.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23211
  • Gde živiš: Niš

trebas da linkujes biblioteku, tamo pod Options / Compiler negde, nacices polje gde trebas da dopises libcurl.



offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

procesljao sam options i nigde nema Compiler-a.
A imas li ideju zasto iostream ne radi? To je ipak jedna od najcesce koriscenih biblioteka.
Kad kreiram projekat izaberem Empty project, da mozda ne treba nesto drugo?

Dopuna: 16 Jan 2007 19:32

Resio sam problem sa cout.
Stavio sam:
using namespace std;
Ali problem sa ostalim bibliotekama jos nisam.
Nasao sam u project properties Linker ali opet nema opcije da povezem sa nekom bibliotekom ili ja ne znam gde je.

Dopuna: 18 Jan 2007 13:46

Delimicno sam resio problem.
Nasao sam drugu verziju biblioteke koja sadrzi i curl.lib i povezao sam ga u linker-u>command line i u Tools>options>projects>VC++ directories postavio sam direktorijume include files i lib files.
ALI...
sada dobijam drugu gresku i to od moje klase:
------ Rebuild All started: Project: crawler2, Configuration: Debug Win32 ------ Deleting intermediate and output files for project 'crawler2', configuration 'Debug|Win32' Compiling... glavna2.cpp moj_string.cpp crClass.cpp Generating Code... Compiling resources... Linking... glavna2.obj : error LNK2019: unresolved external symbol "public: enum CURLcode __thiscall crClass::grabPage(char *)" (?grabPage@crClass@@QAE?AW4CURLcode@@ PAD@Z) referenced in function _main D:\Rezanje\crawler2\crawler2\Debug\crawler2.exe : fatal error LNK1120: 1 unresolved externals Build log was saved at " file://d:\Rezanje\crawler2\crawler2\crawler2\Debug\BuildLog.htm" crawler2 - 2 error(s), 0 warning(s) ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
evo i klase koja poziva ovu grugu klasu:
//glavna2.cpp #include "crClass.h" //#include "moj_string.h" #include <curl.h> //#include <easy.h> #include <iostream> using namespace std; int main() {     CURLcode nesto;     crClass obj;     char *url="http://www.mycity.rs";     nesto=obj.grabPage(url);     cout<<nesto;         return 0; }
Moja klasa (crClass.h):
#include "moj_string.h" #include <process.h> #include "curl.h" class crClass {    public:     moj_string str1;     crClass();     CURLcode grabPage(char *url);     ~crClass(); }; crClass.cpp: #include <iostream> #include "crClass.h" using namespace std; crClass::crClass() {         } crClass::~crClass() {     str1.~moj_string(); } CURLcode grabPage(char *url) {     CURL *curl;     CURLcode page;     curl = curl_easy_init();     curl_easy_setopt(curl, CURLOPT_URL, url);     page=curl_easy_perform(curl); /* ignores error */     curl_easy_cleanup(curl);   return page; }
Ova druga moja klasa moj_string uopste ne pravi probleme a ova koja poziva cURL pravi.
Mislim da ne prepoznaje tip CURLcode ali ukljucio sam curl.h pa me zbunjuje zasto nece.

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23211
  • Gde živiš: Niš

a linkovao si curl.lib ?

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Jesam. Isao sam u project properties>configuration properties>linker>command line i tu sam dodao curl.lib
A postavio sam i u preprocessor definitions libcurl.
Nasao sam podesavanje ali za neki drugi lib pa sam na osnovu toga radio: http://www.algorithmic-solutions.info/leda_manual/DLL_s_MS_Visual1.html
Tad je prestao da mi izbacuje one greske ali pojavila se ova nova Smile

Dopuna: 01 Feb 2007 19:14

E pa konacno sam sredio ovaj program...
Odem kod jednog asistenta i gledamo kod pola sata - sve izgleda ok a ne radi... dolazi drugi asistent, baca pogled i kaze a pa nisi stavio crClass:: ...
Neverovatno sta nisam video Bebee Dol
Tako da kod sada izgleda ovako:
CURLcode crClass::grabPage(char *url) {     CURL *curl;     CURLcode page;     curl = curl_easy_init();     curl_easy_setopt(curl, CURLOPT_URL, url);     page=curl_easy_perform(curl); /* ignores error */     curl_easy_cleanup(curl);   return page; }

Ko je trenutno na forumu
 

Ukupno su 1114 korisnika na forumu :: 48 registrovanih, 2 sakrivenih i 1064 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., aleksmajstor, amaterSRB, aramis s, babaroga, bokisha253, Boris Bosiljčić, Buzdovan, Dannyboy, Denaya, DonRumataEstorski, DPera, dulleo, goxin, Hamannche, hologram, hooraay, Još malo pa deda, Karla, kjkszpj, kybonacci, laurusri, Lieutenant, mercedesamg, Mi lao shu, milenko crazy north, mrav pesadinac, nemkea71, opt1, ozzy, procesor, rodoljub, royst33, sasa87, shone34, Sirius, Sićko, slonic_tonic, ss10, Tandrkalo, theNedjeljko, vaso1, Vlad000, YU-UKI, YugoSlav, zeo, šumar bk2, 125