dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

DLL failu pievienošana exe'i

 
dev.gamez.lv Forum Index -> Iesācējiem
View previous topic :: View next topic  
Author Message
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Sat Sep 20, 2008 10:45 pm    Post subject:

Mazs jautājums. Neko nesaprotu, no DLL failu pievienošanas exe'i, nezinu, pat kā to procesu sauc, bet labprāt uzzinātu. Lietoju Code::Blocks ar MinGW. Pietiktu, kautvai ar lasāmvielu.

Paldies jau iepriekš.
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sat Sep 20, 2008 10:54 pm    Post subject:

To sauc par linkošanu.
Linkojot nokompilētos failus (objektfailus) kopā uz exe failu var papilus norādīt kādi dll failus var lietot (precīzāk sakot - kādus simbolus importēt no kādiem dll failiem). To dara norādot attiecīgās importa bibliotēkas no šiem dll failiem. GCC/MinGW šīs bibliotēkas faili saucās libXXX.a, piemēram libSDL.a fails. Atver codeblokam Build Options savam projektam un pameklē, kur tur linkera opcijās var uzstādīt papildus bibliotēkas.

Diemžēl MinGW wiki pašlaik nestrādā (šie kautko tur pārinstalē), tāpēc precīzu linku, kur palasīt par MinGW & DLL'iem, iedot nevaru. Bet tajā toč kautkas par to bija.

P.S. forša tēma, ko apspriest "C++ Networkingā". Žēl, ka šis forums paliek aizvien piedrazotāks...
Back to top
View user's profile Send e-mail
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Sun Sep 21, 2008 10:31 am    Post subject:

Kuatkā man neizdodas. Confused Cik saprotu jaiet Project->Build Options->Linker Settings un tur pie Link Libraries jāpievieno šī *.dll faila *.a fails. Bet nekādas izmaiņas, bez šī *.dll programma neiet.
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
snake5
Indago dalībnieks
Indago dalībnieks


Joined: 27 Jun 2007
Posts: 2590

PostPosted: Sun Sep 21, 2008 10:42 am    Post subject:

dll'am jābūt programmas mapē (var būt sistēmas mapē, bet priekš ne-windows'a dll'iem tas ir bezjēdzīgi)

bet vispār - ko saka programma vai kas tieši neiet?
_________________
"There are two choices here: "looks good" and "realism"." -- Paul Nettle
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Sep 21, 2008 11:08 am    Post subject:

Tankists wrote:
nekādas izmaiņas, bez šī *.dll programma neiet.

Bet ko gan citu tu gaidīji?
Tieši to jau tu izdarīji - pielinkoji klāt atkarību projektam uz šo .dll failu ar attiecīgā lib*.a faila palīdzību.
Back to top
View user's profile Send e-mail
Tankists



Joined: 18 Dec 2006
Posts: 81
Location: Baldone

PostPosted: Sun Sep 21, 2008 11:19 am    Post subject:

Es biju domājis, piemēram lai programma var iet arī bez šī dll faila, tā lai tas itkā būtu jau programmā...
_________________
Getting used to problems...
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Sun Sep 21, 2008 11:31 am    Post subject:

Tad tev jāņem izejas kods, kas ticis izmantots kompilējot šo dll failu. Un šis kods jānokompilē statiskā bibliotēkā. Statiska bibliotēka, atšķirībā no dinamiskas bibliotēkas, satur visu vajadzīgo kodu sevī, tāpēc, izmantojot to, nekāds dll fails rezultējošam exe failam nebūs vajadzīgs.

Var, protams, vēl mēģināt kautkā iewrapot dll failu kā exe resursu, un programmas startupā to saglabāt temp direktorijā, un tikai tad importēt vajadzīgos simbolus, bet nu.. tas ir risinājums caur pakaļu.

P.S. C++ networkings, hehe :)
Back to top
View user's profile Send e-mail
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group