Hi,

I think I made an error during the testing. Now the -L switch does not work
when I'm testing with the command prompt. I think I had an apinames.obj in
the basedirectory. I'm sorry about the -L switch, it was a waste of time.

But the following sequence does work (first compile to the OBJ, then link):
bcc32 -c -oobjs\apinames.obj src/tools/apinames.c
bcc32 -oobjs/apinames.exe objs/apinames.obj
I commented out the build APINAMES.EXE in export.mk to see if the library is
build fine. It does not, in the end I get:

bcc32 -A  -I.\objs -I.\builds\win32 -I.\include -c -q -y -d -v -Od -w-par
-w-ccc -w-rch -w-pro -w-aus -DFT2_BUILD_LIBRARY
-DFT_CONFIG_MODULES_H="<ftmodule.h>"  -I.\src\psnames -oobjs\psnames.obj
.\src\psnames\psmodule.c
.\src\psnames\psmodule.c:
oobjs/freetype.def -dfreetype.dll -wB ./include/freetype/freetype.h
./include/freetype/ftadvanc.h ./include/freetype/ftbbox.h
./include/freetype/ftbdf.h ./include/freetype/ftbitmap.h
./include/freetype/ftcache.h ./include/freetype/ftchapters.h
./include/freetype/ftcid.h ./include/freetype/fterrdef.h
./include/freetype/fterrors.h ./include/freetype/ftgasp.h
./include/freetype/ftglyph.h ./include/freetype/ftgxval.h
./include/freetype/ftgzip.h ./include/freetype/ftimage.h
./include/freetype/ftincrem.h ./include/freetype/ftlcdfil.h
./include/freetype/ftlist.h ./include/freetype/ftlzw.h
./include/freetype/ftmac.h ./include/freetype/ftmm.h
./include/freetype/ftmodapi.h ./include/freetype/ftmoderr.h
./include/freetype/ftotval.h ./include/freetype/ftoutln.h
./include/freetype/ftpfr.h ./include/freetype/ftrender.h
./include/freetype/ftsizes.h ./include/freetype/ftsnames.h
./include/freetype/ftstroke.h ./include/freetype/ftsynth.h
./include/freetype/ftsystem.h ./include/freetype/fttrigon.h
./include/freetype/fttypes.h ./include/freetype/ftwinfnt.h
./include/freetype/ftxf86.h ./include/freetype/t1tables.h
./include/freetype/ttnameid.h ./include/freetype/tttables.h
./include/freetype/tttags.h ./include/freetype/ttunpat.h
process_begin: CreateProcess(NULL, oobjs/freetype.def -dfreetype.dll -wB
./include/freetype/freetype.h ./include/freetype/ftadvanc.h
./include/freetype/ftbbox.h ./include/freetype/ftbdf.h
./include/freetype/ftbitmap.h ./include/freetype/ftcache.h
./include/freetype/ftchapters.h ./include/freetype/ftcid.h
./include/freetype/fterrdef.h ./include/freetype/fterrors.h
./include/freetype/ftgasp.h ./include/freetype/ftglyph.h
./include/freetype/ftgxval.h ./include/freetype/ftgzip.h
./include/freetype/ftimage.h ./include/freetype/ftincrem.h
./include/freetype/ftlcdfil.h ./include/freetype/ftlist.h
./include/freetype/ftlzw.h ./include/freetype/ftmac.h
./include/freetype/ftmm.h ./include/freetype/ftmodapi.h
./include/freetype/ftmoderr.h ./include/freetype/ftotval.h
./include/freetype/ftoutln.h ./include/freetype/ftpfr.h
./include/freetype/ftrender.h ./include/freetype/ftsizes.h
./include/freetype/ftsnames.h ./include/freetype/ftstroke.h
./include/freetype/ftsynth.h ./include/freetype/ftsystem.h
./include/freetype/fttrigon.h ./include/freetype/fttypes.h
./include/freetype/ftwinfnt.h ./include/freetype/ftxf86.h
./include/freetype/t1tables.h ./include/freetype/ttnameid.h
./include/freetype/tttables.h ./include/freetype/tttags.h
./include/freetype/ttunpat.h, ...) failed.
make (e=2): Het systeem kan het opgegeven bestand niet vinden.
mingw32-make.exe: [objs/freetype.def] Error 2 (ignored)
del .\objs\freetype.lib 2> nul
tlib /u objs\freetype.lib +.\objs\ftsystem.obj +.\objs\ftdebug.obj
+.\objs\ftinit.obj +.\objs\ftbase.obj +.\objs\ftbbox.obj +.\objs\ftbdf.obj
+.\objs\ftbitmap.obj +.\objs\ftcid.obj +.\objs\ftfstype.obj
+.\objs\ftgasp.obj +.\objs\ftglyph.obj +.\objs\ftgxval.obj
+.\objs\ftlcdfil.obj +.\objs\ftmm.obj +.\objs\ftotval.obj
+.\objs\ftpatent.obj +.\objs\ftpfr.obj +.\objs\ftstroke.obj
+.\objs\ftsynth.obj +.\objs\fttype1.obj +.\objs\ftwinfnt.obj
+.\objs\ftxf86.obj +.\objs\truetype.obj +.\objs\type1.obj +.\objs\cff.obj
+.\objs\type1cid.obj +.\objs\pfr.obj +.\objs\type42.obj +.\objs\winfnt.obj
+.\objs\pcf.obj +.\objs\bdf.obj +.\objs\sfnt.obj +.\objs\autofit.obj
+.\objs\pshinter.obj +.\objs\raster.obj +.\objs\smooth.obj
+.\objs\ftcache.obj +.\objs\ftgzip.obj +.\objs\ftlzw.obj +.\objs\psaux.obj
+.\objs\psnames.obj
TLIB 5.1 Copyright (c) 1987-2007 CodeGear
Warning: invalid page size value ignored
Warning: invalid page size value ignored

The "Warning: invalid page size value ignored" is repeated infinitly. I had
to abort the compile with CTRL-C.

Regards,
Mirco


2009/7/13 <[email protected]>

> Hi,
>
> Considering the fact that "-L./objs" does not work,
> I guess bcc32 cannot recognize "/" as valid pathname
> separator. If my guessing is right, the expected
> might be:
>
>        bcc32 -Lobjs -oobjs\apinames.exe src\tools\apinames.c
>
> You've ever written that you tried
>
>        bcc32 -Lobjs -oobjs/apinames.exe src/tools/apinames.c
>
> and it successfully finihsed - the pathname separator
> in your experiment was really "/", not "\"?
>
> Regards,
> mpsuzuki
>
>
> On Mon, 13 Jul 2009 08:50:59 +0200
>  Mirco Babin <[email protected]> wrote:
>
> >Hi,
> >
> >Update, I manually changed the bcc.mk to CCexe_LDFLAGS := -Lobjs
> >It still results in the same error. I don't get it, it seems like the
> >current directory is changed ?
> >
> >bcc32 -A  -I.\objs -I.\builds\win32 -I.\include -c -q -y -d -v -Od -w-par
> >-w-ccc -w-rch -w-pro -w-aus -DFT2_BUILD_LIBRARY
> >-DFT_CONFIG_MODULES_H="<ftmodule.h>"  -I.\src\psnames -oobjs\psnames.obj
> >.\src\psnames\psmodule.c
> >.\src\psnames\psmodule.c:
> >bcc32  -Lobjs -oobjs/apinames.exe src/tools/apinames.c
> >CodeGear C++ 5.93 for Win32 Copyright (c) 1993, 2007 CodeGear
> >src/tools/apinames.c:
> >Turbo Incremental Link 5.81 Copyright (c) 1997-2008 CodeGear
> >Fatal: Unable to open file 'APINAMES.OBJ'
> >mingw32-make: *** [objs/apinames.exe] Error 1
> >Regards,
> >Mirco
> >
> >2009/7/13 Mirco Babin <[email protected]>
> >
> >> Hi,
> >>
> >> I applied your patch and compiled.
> >> I see the -L now, but it still results in an error. I believe the
> -L./objs
> >> should be replaced with -Lobjs
> >>
> >>  bcc32 -A  -I.\objs -I.\builds\win32 -I.\include -c -q -y -d -v -Od
> -w-par
> >> -w-ccc -w-rch -w-pro -w-aus -DFT2_BUILD_LIBRARY
> >> -DFT_CONFIG_MODULES_H="<ftmodule.h>"  -I.\src\psnames -oobjs\psnames.obj
> >> .\src\psnames\psmodule.c
> >> .\src\psnames\psmodule.c:
> >> bcc32  -L./objs -oobjs/apinames.exe src/tools/apinames.c
> >> CodeGear C++ 5.93 for Win32 Copyright (c) 1993, 2007 CodeGear
> >> src/tools/apinames.c:
> >> Turbo Incremental Link 5.81 Copyright (c) 1997-2008 CodeGear
> >> Fatal: Unable to open file 'APINAMES.OBJ'
> >> mingw32-make: *** [objs/apinames.exe] Error 1
> >>
> >> Regards,
> >> Mirco
> >>
> >> 2009/7/10 <[email protected]>
> >>
> >> Hi,
> >>>
> >>> Could you try following patch? It fixes:
> >>>
> >>> * declare the suffix ".exe" to be added to "apinames".
> >>> * prepare CCexe_CFLAGS & CCexe_LDFLAGS.
> >>> * put "-Lobj" to CCexe_LDFLAGS when we use bcc.
> >>>
> >>> Regards,
> >>> mpsuzuki
> >>>
> >>> diff --git a/builds/win32/win32-def.mk b/builds/win32/win32-def.mk
> >>> index a82b146..e6ae31c 100644
> >>> --- a/builds/win32/win32-def.mk
> >>> +++ b/builds/win32/win32-def.mk
> >>> @@ -22,6 +22,7 @@ PLATFORM  := win32
> >>>  # The executable file extension (for tools). NOTE: WE INCLUDE THE DOT
> >>> HERE !!
> >>>  #
> >>>  E := .exe
> >>> +E_BUILD := .exe
> >>>
> >>>
> >>>  # The directory where all library files are placed.
> >>>
> >>>
> >>> diff --git a/builds/exports.mk b/builds/exports.mk
> >>> index 5452b35..d84a4c2 100644
> >>> --- a/builds/exports.mk
> >>> +++ b/builds/exports.mk
> >>> @@ -51,7 +51,7 @@ ifneq ($(EXPORTS_LIST),)
> >>>   APINAMES_EXE := $(OBJ_DIR)/apinames$(E_BUILD)
> >>>
> >>>   $(APINAMES_EXE): $(APINAMES_SRC)
> >>> -         $(CCexe) $(TE)$@ $<
> >>> +         $(CCexe) $(CCexe_CFLAGS) $(CCexe_LDFLAGS) $(TE)$@ $<
> >>>
> >>>   .PHONY: symbols_list
> >>>
> >>> diff --git a/builds/compiler/bcc.mk b/builds/compiler/bcc.mk
> >>> index 509cb72..c28359a 100644
> >>> --- a/builds/compiler/bcc.mk
> >>> +++ b/builds/compiler/bcc.mk
> >>> @@ -75,4 +75,8 @@ CLEAN_LIBRARY ?= $(DELETE) $(subst
> >>> /,$(SEP),$(PROJECT_LIBRARY))
> >>>  LINK_LIBRARY   = tlib /u $(subst /,$(COMPILER_SEP),$@
> >>> $(OBJECTS_LIST:%=+%))
> >>>
> >>>
> >>> +# apinames linking
> >>> +#
> >>> +CCexe_LDFLAGS := -L$(OBJ_DIR)
> >>> +
> >>>  # EOF
> >>>
> >>>
> >>>
> >>>
> >>> On Fri, 10 Jul 2009 15:44:56 +0200
> >>> Mirco Babin <[email protected]> wrote:
> >>>
> >>> >Hi,
> >>> >
> >>> >The problem is that the linker can't find the OBJ file.
> >>> >The current directory is .
> >>> >The obj files are compiled into .\objs
> >>> >From the current directory a link is performed, but the .\objs
> directory
> >>> is
> >>> >not set as a path.
> >>> >
> >>> >Indeed apinames.exe is just one obj.
> >>> >
> >>> >I'm looking forward to your solution, thanks in advance !
> >>> >
> >>> >Regards,
> >>> >Mirco
> >>> >
> >>> >2009/7/10 suzuki toshiya <[email protected]>
> >>> >
> >>> >> Hi,
> >>> >>
> >>> >> Mirco Babin wrote (2009/07/10 21:53):
> >>> >> > Well,
> >>> >> >
> >>> >> > I tried the following and it does not produce errors:
> >>> >> > bcc32 -Lobjs -oobjs/apinames.exe src/tools/apinames.c
> >>> >> >
> >>> >> > The -L switch is to provide a library search path (where to find
> OBJ
> >>> and
> >>> >> LIB
> >>> >> > files).
> >>> >>
> >>> >> Interesting. apinames.exe requires only apinames.c,
> >>> >> no need to link other libraries and objects, so
> >>> >> the requirement of "-Lobjs" is not easy to understand.
> >>> >> Maybe we have to care the single command executing
> >>> >> compilation and linking.
> >>> >>
> >>> >> > But I don't known what should be adjusted in the makefiles. They
> are
> >>> >> really
> >>> >> > complex.
> >>> >>
> >>> >> OK, I will take a look. Please wait 24 hours.
> >>> >>
> >>> >> Regards,
> >>> >> mpsuzuki
> >>> >>
> >>> >> > Regards,
> >>> >> > Mirco
> >>> >> > 2009/7/10 suzuki toshiya <[email protected]>
> >>> >> >
> >>> >> >> Hi,
> >>> >> >>
> >>> >> >> Mirco Babin wrote (2009/07/10 20:24):
> >>> >> >>
> >>> >> >>> bcc32 -oobjs/apinames src/tools/apinames.c
> >>> >> >>> CodeGear C++ 5.93 for Win32 Copyright (c) 1993, 2007 CodeGear
> >>> >> >>> src/tools/apinames.c:
> >>> >> >>> Turbo Incremental Link 5.81 Copyright (c) 1997-2008 CodeGear
> >>> >> >>> Fatal: Unable to open file 'APINAMES.OBJ'
> >>> >> >>> mingw32-make: *** [objs/apinames] Error 1
> >>> >> >>>
> >>> >> >> I'm unfamiliar with bcc32 commandline syntax.
> >>> >> >> How we can build "Hello World"-like program
> >>> >> >> by bcc32? I think the author of the Makefile
> >>> >> >> assumed that "bcc32 -ohello hello.c" is OK.
> >>> >> >> Please let me know how to build hello world
> >>> >> >> by bcc32.
> >>> >> >>
> >>> >> >> The command
> >>> >> >>
> >>> >> >> bcc32 -oobjs/apinames.exe src/tools/apinames.c
> >>> >> >>
> >>> >> >> can compile & link working executabe "apinames.exe"?
> >>> >> >>
> >>> >> >> Regards,
> >>> >> >> mpsuzuki
> >>> >> >>
> >>> >> >
> >>> >>
> >>> >>
> >>> >
> >>>
> >>
> >>
> >
>
_______________________________________________
Freetype mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/freetype

Reply via email to