[redland-dev] HOW build under windows?

Dave Beckett dave at dajobe.org
Thu Aug 24 04:46:40 UTC 2006


Georgios Petasis wrote:
> O/H Dave Beckett έγραψε:
>> Georgios Petasis wrote:
>>   
>>> Hi all,
>>>
>>> I want to build redland under windows, with the ultimate goal of
>>> building the Tcl bindings
>>> for windows. So, I downloaded the redland sources (which also contain
>>> raptor and rasqal sources),
>>> and tried to build redland, by using the supplied VC++ project files (my
>>> VC is version 7.1).
>>>
>>> After some modifications in raptor sources (mainly the TRUE/FALSE and
>>> strcasecmp uses)
>>> I successfully built the raptor dll. Now, I want to build rasqal, but it
>>> seems that it
>>> requires librdf. To my understanding, librdf is the redland library,
>>> which to build I need rasqal.
>>> How am I supposed to build rasqal (that needs librdf) or librdf (that
>>> needs rasqal)?
>>>     
>>
>> rasqal does not require librdf, that is mostly for testing.
>>
>> The dependencies are on the librdf.org home page:
>> Raptor
>> Rasqal: requires raptor
>> Redland/librdf: requires rasqal and raptor
>>   
> Yes, I have seen these dependencies. But on the other hand, there is the
> file
> rasqal_redland.c in the rasqal directory, that references all these librdf_*
> functions. The file is included in the VC project files, as a file that
> belongs to the project (thus needs to be added in the produced DLL).

That's a mistake.

> What is this file? Is it a test file? Should I remove it from the project?

It's mostly for development, using rasqal with redland as it's backend
store.  This is not something anyone but me should really be using, as it
gives you a recursive dependency.  Remove it from the project.

>>> Also, are there any references on what exactly are the requirements to
>>> build redland?
>>>     
>>
>> There are a lot of optional libraries, and redland's configure system
>> manages that.  For windows, you have to hard code it.
>>
>>   
>>> I keep downloading libraries all the time by looking at the missing
>>> header files :-(
>>>     
>>
>> Well you built raptor, that needs libxml or expat.  Can be enhanced with
>> curl (or required if you chose expat).
>>   
> I used libxml2, and then I also needed libxslt (as missing headers
> errors arose), and then
> libcurl.
>> Rasqal needs raptor and can use pcre to make regex queries work.
>>   
> Yes, I also added pcre as missing header files suggested.
>> Redland/librdf: needs raptor, rasqal.  Can use lots of things to store in
>> including mysql, postgresql, berkeleydb, sqlite2/3, 3store
>>   
> Missing headers suggest both mysql & sqlite.

The choice of which things to build are defined in win32_rdf_config.h
so you can disable either or both of those.  On POSIX systems,
rdf_config.h is generated by configure.  Since win32 doesn't
do that, it's a static file you'll have to edit if you change
the modular parts, such as stores.

> It seems that the redland sources come configured for windows in a
> specific way
> (and I don't know why), but no where all these (default?) dependencies
> are described.
> Nor a way to change them...

It's all open source, you can edit the IDE's project files.  There
are plenty of ways to change them.

Dave



More information about the redland-dev mailing list