[sword-devel] bcpp project files
Chris Little
sword-devel@crosswire.org
Thu, 04 Dec 2003 18:59:56 -0600
Charles & Troy,
I'm sorry I did't notice that the ICU stuff gets used in the flat API
projects. I would have fixed it back when I made those changes to the
main library project.
The problem is that I changed the names of the ICU library project files
(and of the library files themselves). It should be pretty
self-explanatory. I think the project files are now called icuuc and
icuin, and are in the same directory as they used to be (something like
icu-sword/as_is/borland/). I'll have a moment tomorrow to look at it if
no one else gets the chance to commit a fix tonight.
--Chris
Charles W. Crary wrote:
> Troy,
>
> Thanks for the quick response.
>
> I suspected that something like you described had happened with CodeGuard.
>
> I had tried to use the BPG file (bindings\bcppmake\sworddll.bpg) but it was
> broken. On the off chance that it would help, I fixed the project group
> file (it references a test.exe project which doesn't actually exist in the
> default directory) but I am running into the same issues with the ICU
> libraries - either ICUI18N.LIB isn't available (if I build with the original
> *.BPF file) or there is an unresolved external reference in ICUUC.LIB (if I
> build with a modified *.BPF which includes all the ICU libraries built from
> CVS).
>
> I appreciate your looking into this. I'll see if I can get any further as
> well.
>
> Thanks,
>
> Charles
>
> -----Original Message-----
> From: sword-devel-admin@crosswire.org
> [mailto:sword-devel-admin@crosswire.org] On Behalf Of Troy A. Griffitts
> Sent: Thursday, December 04, 2003 10:22 AM
> To: sword-devel@crosswire.org
> Subject: Re: [sword-devel] bcpp project files
>
> Charles,
> Quick reply to some questions.
>
> My apologies. Last time I built the windows code, I was hunting
> down a memory leak in one of the utilities, so I turned on CodeGuard in the
> project file. The project file was commited with my fix for the memory bug.
> I hadn't thought much about the free version of the compiler not providing
> the codeguard libraries. I will try to remember to turn codeguard off
> before commiting, next time.
>
> Building from .bpg files is usually all that we support, though
> using the individual .bpr project files directly should work fine. BUT,
> usually the .bpg files know what projects need to be built FIRST before
> other things. In short, I'd recommend that you use the Borland Project
> Group (.bpg) files, if they exist.
>
> I haven't attempted to build the flatapi in some time, on Windows.
> It should work, as I think it is used for some language bindings, and
> compiled for other platforms, but I'm not sure. Let me know if you get it
> working. I will also try to make time to look at it soon.
>
> Hope this helps a little,
> -Troy.
>
>
>
> Charles W. Crary wrote:
>
>>Guys,
>>
>>I've been trying to build 1.5.6 and the current version in CVS in the
>>Standard (cheap) edition of Borland C++Builder 5. I've run into a
>>couple of problems and the occaisional solution and wanted to run them by
>
> the list.
>
>>
>>I'm primarily a Pascal and SQL developer, so please pardon my ignorance.
>>
>>The first issue: When trying to build the library using
>>lib\bcppmake\libsword.bpr or lib\bcppmake\libsword6icu.bpr I had
>>problems when linking - the linker said that it couldn't fine
>>cg32.lib. After a bit of research I discovered that the library
>>belongs to CodeGuard, an extra tool that Borland ships with the
>>Enterprise version of C++Builder. There is no GUI access to CodeGuard
>>options in the cheaper versions of C++Builder, but I removed the line
>>indicated below from the linker section of the Borland project files
>
> (*.bpr).
>
>>
>> <LINKER>
>> <ALLOBJ value="$(OBJFILES)"/>
>> <ALLLIB value="cg32.lib"/> <-- remove this line!
>> </LINKER>
>>
>>Once this line was gone, I was able to build the library.
>>
>>I'm not familiar with CodeGuard, and haven't gotten to where I can
>>test the library to make sure it works without it. But if it isn't
>>necessary, I think it would make sense to remove the reference so
>>those of us with the cheaper versions of the C++Builder won't have to mess
>
> with it in the future.
>
>>Second item: While trying to figure this out I got the current code
>>from CVS and played around with it. The *.bpf files in lib\bcppmake
>>(which list the files to build) appear to be empty. I may be
>>betraying my ignorance here, but the same files in 1.5.6 list quite a
>>number of files, none of which appear in the CVS version. When I try
>>to Build the projects from CVS, it is finished immediately, so I
>>suspect that some files are missing. Are these project files in the
>>midst of revision? It isn't a big deal, since I have access to 1.5.6, but
>
> I *am* curious.
>
>>Third item: I am trying to build the flat API version of the library
>>(bindings\bcppmake\sword.bpr). I've gotten icu-sword from CVS and
>>have built it successfully, but when I try to build the flat API, the
>>linker complains that it can't find ICUI18N.LIB. That doesn't appear
>>to be in the icu-sword project, so I'm not sure where to go.
>>
>>I did see on the list that someone (Chris maybe?) had updated the ICU
>>stuff in the last few months. Perhaps bindings\bcppmake\sword.bpf
>>hasn't been updated to reflect the new ICU libraries? Currently it looks
>
> like this:
>
>> USEUNIT("sword.c");
>> USEUNIT("..\flatapi.cpp");
>> USELIB("..\..\lib\libsword.lib");
>> USELIB("..\..\..\icu-sword\as_is\borland\icui18n.lib");
>> USELIB("..\..\..\icu-sword\as_is\borland\icudatab.lib");
>> USELIB("..\..\..\icu-sword\as_is\borland\icucommon.lib");
>>
>>//--------------------------------------------------------------------
>>------
>>-
>> This file is used by the project manager only and should be
>>treated like the project file
>>
>>
>> DllEntryPoint
>>
>>I've tried replacing the ICU libraries above with the five ICU
>>libraries in the current CVS (icuuc.lib, icuin.lib, icuio.lib,
>>icule.lib, iculx.lib), but I get an error on linking:
>>
>>[Linker Error] Unresolved external '_icuudt26_dat' referenced from
>>ICU-SWOD\AS_IS\BORLAND\ICUUC.LIB|udata
>>
>>If anyone could give me a hint as to how to proceed, I would appreciate
>
> it.
>
>>Lest I be accused of complaining, I think that this is a great
>>project, and I appreciate all the work you guys have done on it.
>>
>>Thanks,
>>
>>Charles Crary