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: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Troy A. Griffitts
Sent: Thursday, December 04, 2003 10:22 AM
To: [EMAIL PROTECTED]
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


_______________________________________________
sword-devel mailing list
[EMAIL PROTECTED]
http://www.crosswire.org/mailman/listinfo/sword-devel

Reply via email to