Makefile getestet bis Borland Compiler 5.5 mit Turbo C++ compilieren
-
Ich versuche gerade die MAPM Library zu compilieren.
Die haben freundlicherweise ein Makefile "makefile.b32" zur verfügung gestellt, mit dessen hilfe ich die Bibliothek gerne compilieren würde.... Das funktioniert natürlich nicht so einfach. Ich hab leider auch bisher sehr wenig Erfahrungen mit diesen Library Compilierungen.
Also konkret:
- wie genau muss ich Vorgehen ?
Ich habe alle C-Source Dateien irgendwie in .obj's verwandeln können - wenn ich das makefile von der Kommandozeile aus starte mit:make -fc:*Pfad*....\makefile.b32
kommt dann FATAL: 'MAPM5SIN.obj' does not exist - don't know how to make it
Wie muss ich allgemein vorgehen ? Was muss ich hier konkret machen ?
Und kann es sein - nur so ganz nebenbei, dass es keine nette arbitrary precision library für den Borland Builder gibt ?Hier mal der Code der makefile:
LIBTARGET = mapm.lib CC = bcc32 # -c compile only # add -v if you want debugging info CFLAGS = -DMSDOS -c # uncomment the relevant BCCINC macro... # # this is for Borland 5.5 (edit for your path) #BCCINC = -Ie:\Borland\turbo c++\Bin # this is for Borland 5.2 which can find it's own headers BCCINC = OBJECTS = MAPM5SIN.OBJ \ MAPMASIN.OBJ \ MAPMASN0.OBJ \ MAPMCBRT.OBJ \ MAPMCNST.OBJ \ MAPMFACT.OBJ \ MAPMFMUL.OBJ \ MAPMGUES.OBJ \ MAPMHASN.OBJ \ MAPMHSIN.OBJ \ MAPMIPWR.OBJ \ MAPMISTR.OBJ \ MAPMPWR2.OBJ \ MAPMRSIN.OBJ \ MAPMSQRT.OBJ \ MAPMSTCK.OBJ \ MAPMUTIL.OBJ \ MAPMUTL1.OBJ \ MAPMUTL2.OBJ \ MAPM_ADD.OBJ \ MAPM_CPI.OBJ \ MAPM_DIV.OBJ \ MAPM_EXP.OBJ \ MAPM_FAM.OBJ \ MAPM_FFT.OBJ \ MAPM_FLR.OBJ \ MAPM_FPF.OBJ \ MAPM_GCD.OBJ \ MAPM_LOG.OBJ \ MAPM_LG2.OBJ \ MAPM_LG3.OBJ \ MAPM_LG4.OBJ \ MAPM_MUL.OBJ \ MAPM_POW.OBJ \ MAPM_RCP.OBJ \ MAPM_RND.OBJ \ MAPM_SET.OBJ \ MAPM_SIN.OBJ .SUFFIXES: .c .obj .c.obj : bcc32 $(CFLAGS) $(BCCINC) $< -o $@ all: $(LIBTARGET) $(LIBTARGET): $(OBJECTS) tlib $(LIBTARGET) /P1024 @&&! -+$(OBJECTS:.OBJ=.OBJ -+) ! clean: -erase *.obj -erase *.lib
-
Spezifisch für den C++Builder gibt es AFAIK nichts derartiges, aber meisten der gängigen C-, C++- und Delphi-Libraries sollten verwendbar sein.
BCCINC sollte auf den Include-, nicht auf den Binary-Pfad verweisen. Aber einerseits wird bei Turbo C++ die *.cfg-Datei vom Installer bereits so angepaßt, daß das gar nicht mehr notwendig sein sollte, und andererseits bewirkt deine Zuweisung absolut nichts, solange du sie auskommentiert läßt
Außerdem dürften deine Erfolgschancen größer sein, wenn du make aus dem Verzeichnis startest, in dem das Makefile sich befindet. Und wenn du es partout nicht hinbekommst, dann erstelle dir doch einfach in Turbo C++ eine statische Bibliothek und adaptiere die im Makefile aufgeführten Einstellungen manuell.
-
Hey,
danke ! Klappt!
Ich war etwas verwirrt, weil dort als vorgabe der pfad des compilers angegeben war...
warum das in meinem Beispiel auskommentiert war, weiß ich nicht - ich hatte es auch ohne kommentarzeichen probiert ...
Man muss den Include pfad ürbigens angeben!