Article View: be.comp.programming
Article #4786Re: gethostbyname linker error
From: Roel Schroeven
Date: Sat, 12 Jul 2003 14:55
Date: Sat, 12 Jul 2003 14:55
40 lines
3113 bytes
3113 bytes
Bart Vandewoestyne wrote: > Roel Schroeven wrote: >> >> Anders moet je bij elke library het volledig pad opgeven. Het is maar >> normaal dat je elke library apart moet opgeven; anders worden altijd >> alle libraries meegelinkt, ook degene die niet nodig zijn. > > Ah, ok, dus je bedoelt dat het logisch is omdat je via die library > directories al het grootste deel van het pad opgeeft, en dan via die > compiler specifieke opties nog de library zelf meegeeft, zonder het > lange eerste stuk van het pad? Inderdaad. > Wel nog iets raars: de compiler optie die ik gebruik is '-lws2_32', en > als ik kijk in mijn Dev-Cpp\lib directory, dan zie ik als filenaam enkel > 'libws2_32.a' staan... (bemerk het verschil in naam! > > Wat zijn die .a files juist en hoe zou het verschil in naam dan te > verklaren zijn? M.a.w. hoe komt het dat die '-lws2_32' werkt terwijl de > filenaam niet hetzelfde is? .a files zijn archives. Gewoon een verzameling .o files die samen in een file gestoken zijn, plus een index van de symbolen zodat de linker die later gemakkelijk kan terugvinden. Je kan een library gemakkelijk zelf maken door ofwel eerst een archive te maken met ar en dan de index eraan toe te voegen met ranlib, ofwel beide te stappen te combineren met ar -s. Libraries op unix-achtige systemen beginnen normaal altijd met 'lib', maar als je de linker de naam van een library meegeeft zet je dat er niet bij; de linker doet dat zelf. Ik vind dat ook een beetje raar, maar het is nu eenmaal een conventie. DevCpp draait wel onder Windows, maar het gebruikt gcc & friends, die ontwikkeld zijn voor gebruik op unix-achtige systemen. -- "Codito ergo sum" Roel Schroeven
Technical Details
Message-ID:
<sjVPa.2946$F92.249@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-04!sn-xit-01!sn-xit-08!supernews.com!pd2nf1so.cg.shawcable.net!residential.shaw.ca!in.100proofnews.com!in.100proofnews.com!aotearoa.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<3F0EDCDC.7030304@pandora.be> <3f0ee657$0$6531$afc38c87@sisyphus.news.be.easynet.net> <3F0EE79E.3030309@pandora.be> <3f0efeab$0$6529$afc38c87@sisyphus.news.be.easynet.net> <3F0F0504.6020004@pandora.be> <3f0f3b92$0$263$ba620e4c@reader0.news.skynet.be> <3F0F4501.10202@pandora.be> <beovim$4dl$1@nl-news.euro.net> <R5UPa.2759$F92.306@afrodite.telenet-ops.be> <3F1015B5.4000400@pandora.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,1ac693aa93e00c82 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-07-12 07:55:28 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-04!sn-xit-01!sn-xit-08!supernews.com!pd2nf1so.cg.shawcable.net!residential.shaw.ca!in.100proofnews.com!in.100proofnews.com!aotearoa.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail Newsgroups: be.comp.programming From: Roel Schroeven <j4nff5m02@sneakemail.com> Subject: Re: gethostbyname linker error References: <3F0EDCDC.7030304@pandora.be> <3f0ee657$0$6531$afc38c87@sisyphus.news.be.easynet.net> <3F0EE79E.3030309@pandora.be> <3f0efeab$0$6529$afc38c87@sisyphus.news.be.easynet.net> <3F0F0504.6020004@pandora.be> <3f0f3b92$0$263$ba620e4c@reader0.news.skynet.be> <3F0F4501.10202@pandora.be> <beovim$4dl$1@nl-news.euro.net> <R5UPa.2759$F92.306@afrodite.telenet-ops.be> <3F1015B5.4000400@pandora.be> Organization: http://www.catb.org/~esr/faqs/smart-questions.html User-Agent: slrn/0.9.7.4 (Linux) Lines: 40 Message-ID: <sjVPa.2946$F92.249@afrodite.telenet-ops.be> Date: Sat, 12 Jul 2003 14:55:20 GMT NNTP-Posting-Host: 81.164.36.61 X-Complaints-To: abuse@telenet.be X-Trace: afrodite.telenet-ops.be 1058021720 81.164.36.61 (Sat, 12 Jul 2003 16:55:20 MET DST) NNTP-Posting-Date: Sat, 12 Jul 2003 16:55:20 MET DST