Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Kompilera källkodsfil till mac?

Tråden skapades och har fått 7 svar. Det senaste inlägget skrevs .
1

Går det att installera/kompilera program som finns som källkod under tex GNU till OS X?
Jag har förr sysslat (lite numer) med LINUX och det finns ju multum av program som man kompilerar till önskat OS.

Frågan är kort - eftersom OS X är baserat på FreeBSD måste det väl gå att kompilera och köra de flesta programmen även på mac?

Svaret är lika kort; ja det går.

Lite finstilt...

Systemanropen i OS-X är kraftigt Mach-skadade och sålunda har inte OS-x allt man som FreeBSDare är van vid vad gäller ex synkron iomultiplexering (poll, kqueues, etc) dock finns den gamla select

Det finns Darwinports som fungar hyggligt och det våldsamt linux/gnu/fotsvett-skadade fink(el) där det förstnämnda som funkar ungefär som ports i Free fast över tcl snarare än make. Fink funkar (eller ska funka eller whatever) som debianpaket

Ja, det mesta går faktiskt bra. Det är iofs precis som pellemell säger att en del systemanrop är lite eljest (milt sagt), detsamma gäller för hanteringen av dynamiskt länkade bibliotek i vissa fall. De egenheterna var en närmast outsinlig källa till nervösa sammanbrott när OS X var relativt nytt och hade en liten användarbas, och jag har slitit mitt hår i vild panik mer än en gång.

Men: Det fina är att OS X har fått väldigt stor spridning i opensource-världen på sistone. På grund av det har det mesta testats ordentligt, och större delen av de program/kodbibliotek som tidigare krävde avancerat pillande i make- och .h-filer för att kompilera under OS X har fixats till och kompilerar bara fint.

Senast redigerat 2005-06-03 16:55

Jo pga främst Mach-o (som till skillnad från sitt namn inte är det minsta macho), vilket är binärformatet i OS-X får man ett helvete med DSOer, men kompilerar man själv kan man ofta trixa runt det med statiska libbar och gammal hederlig hårdlänkning.

Även den hiarkiska funktions-namespacen i OS-X kan ställa till det om man har otur. Finns dock en del dokumentation på apples sida om saken.

Men alltså, tillbaks till frågan... Ska du haxsra/trixa/dona i program eller vill du bara försöka porta över dditt favvo-unix prog till os-x?

Jag vill kunna porta mina LINUX-favoritapplikationer till macen. Samt kunna använda en massa open-sourceprogram som kommer hela tiden.

  • Medlem
  • Uppsala
  • 2006-04-13 08:58

jag måste säga att det mesta funkar alldeles utmärkt. Det är ju ofta lite bökigt att kompilera för vilket Unix som helst, och jag tycker inte att OSX är mer bökigt än nåt annat. Jag har byggt åtskilliga program som aldrig testats tidigare under OSX.

Följdfrågan blir då - hur gör man?

Ursprungligen av millgard:

Följdfrågan blir då - hur gör man?

Tre enkla steg (för det mesta):

./configure
make
make install

Det enda som krävs är att XCode Tools finns installerat eftersom en standardinstallation inte inkluderar någon kompilator - vill du inte ha XCode och allt krafs som ingår kan du göra en anpassad installation och bara kryssa för GCC. Om något program skulle avvika från standardförfarandet brukar det finnas beskrivet i filen INSTALL eller README.

Annars finns det mesta man behöver tillgängligt via DarwinPorts, som är en sjuhelsikes bra pakethanterare som tar hand om kompileringen samt att ordna dependencies och fixa versionskonflikter. Då är det bara att använda port-kommandot, luta sig tillbaka i stolen och se allting rassla förbi.

1
Bevaka tråden