Re: C++ på BSD

From: Morten Liebach (none@m--mongers.org.lh.bsd-dk.dk)
Date: Tue 16 Sep 2003 - 20:18:38 CEST


Date: Tue, 16 Sep 2003 20:18:38 +0200
From: Morten Liebach <none@m--mongers.org.lh.bsd-dk.dk>
To: bsd-novice@bsd-dk.dk
Subject: Re: C++ på BSD

On 2003-09-16 10:49:15 +0200, Anders Soendergaard wrote:
> On Tue, 2003-09-16 at 09:09, ext Torben Sørensen wrote:
> > Jeg vil gerne i gang med at kode noget C++ på BSD og har forsøgt mig i
> > diverse IDE's (KDevelop, Anjuta mv), men jeg er ikke helt sikke på hvad
> > der sker bagved...
> Nej: vi! Det ved man hvad er! ;-)

HØRT!

Unix er den bedste IDE i sig selv. Brug $EDITOR, $SHELL og g++.

Jeg kan meget varmt anbefale at installere og bruge
/usr/ports/devel/ctags sammen med din editor til at navigere rundt i
kildekoden, jeg er selv ret vild med Vim som integrerer perfekt med
ovennævnte værktøj.

Jeg bruger selv næsten daglig Visual Studio .NET på Windows XP til at
kode C#, og det er da også et lækkert poleret miljø at arbejde i, men
jeg kan alligevel meget bedre li' at boote op i min BSD og arbejde i
fvwm2 med en håndfuld xtermer og en webbrowser til at læse dokumentation
i. Det holder 100%.

> > Jeg har kode C/C++ på Windows men aldrig på BSD/Linux....
> > Jeg ville gerne kode mod Gtk.
> > Hvor skal jeg starte??
>
> Start med at pløje GTK's tutorial igennem fra ende til anden!
> Du finder den her: http://www.gtk.org/tutorial/

/usr/ports/devel/glade{,2} kan lave noget med GTK+, men jeg aner ikke
hvor god den er. Jeg har aldrig lavet GUIer på Unix. (Unix GUI? Who
cares!) ;)

> > Jeg kan ikke rigtig finde ud af det med automake,autoconf og libtool...
> > Skal de være i bestemte versioner, for at kunne spille sammen (jeg har
> > fx fået en fejl: "error: configure: libtool configure failed", men jeg
> > aner ikke hvad det betyder)??
> The three amigos (libtool, autoconf og automake! ikke James, Ivar og
> Grady :-) bruges hvis du skal lave platformsuafhængig kode. Kode som
> du kan tage fra din FreeBSD og flytte over på en Solaris og lave
> configure, make, make install dansen.
> Det er ikke for børn!!! Start kun med dem hvis du elsker at cykle
> op ad bakker i modvind. Brug dog altid make, og gør dig selv den
> tjeneste at sætte dig godt ind i den!
> (http://www.gnu.org/manual/make-3.80/)

Eller bare make(1).

> Når du er begyndt at være godt hjemme i C/C++ _og_ make, og du
> bare brænder efter at blive udfordret, så kig først i
> http://www.gnu.org/directory/hello.html som er en GNU
> hello world, med libtool, autoconf, automake, og alskens
> andre sager.
> Kig derefter på http://www.gnu.org/manual/ efter libtool, autoconf
> og automake efter deres respektive manualer.
>
> > Liste med bøger, eksempler, tips/trix, henvisninger og andet godt fra
> > havet, skal være hjertlig velkommen.

http://sources.redhat.com/autobook/autobook/autobook_toc.html
 

\begin{gode_råd_og_lommefilosofi}

Det sværeste ved at lære at kode på Unix er nok at der er så total
valgfrihed i hvilke værktøjer man vil bruge. Jeg bruger selv vim(1) som
editor og ksh(1) som shell, men der er mange andre fremragende
muligheder og uendelige mængder af utilities.

I et interview om eXtreme Programming med, svjh., Andy Hunt og Dave
Thomas på artima.com sagde de noget med at man skulle lære en tekst
editor og et tekst-manipulations sprog rigtig godt og bruge det til alt.
I mit tilfælde er det vim(1) og perl(1), men det kunne lige så vel have
været emacs(1) og python(1), eller jed(1) og ruby(1).
Om man så bruger de værktøjer til at kode C, C++, Java eller Visual
Basic med er i og for sig ligegyldigt.

Alle de nævnte editors og sprog findes i udgaver til enhver Unix og til
Windows.

Men lær også at bruge alle de dejlige værktøjer der er med som standard
i Unix, sed(1), awk(1), grep(1), cut(1), jot(1), m4(1), sh(1) (til
scripting) og husk, uanset hvilken editor du ellers fortrækker, at lære
det mest basale vi(1), det er tit den eneste editor på den server det
hele skal ende med at køre på. :)

\end{gode_råd_og_lommefilosofi}

Med venlig hilsen
                                 Morten

-- 
OpenPGP: 0xF1360CA9 - 8CF5 32EE A5EC 36B2 4E3F  ACDF 6D86 BEB3 F136 0CA9
         Morten Liebach <none@m--mongers.org.lh.bsd-dk.dk> - http://m.mongers.org/



This archive was generated by hypermail 2b30 : Wed 15 Nov 2006 - 18:25:08 CET