[haiku-development] Re: Yet another newbee question

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sat, 24 Apr 2010 19:53:08 +0200

On 2010-04-24 at 16:01:33 [+0200], x-otic@xxxxxxx <x-otic@xxxxxxx> wrote:
> On 23.04.2010 20:20, Stephan Assmus wrote:
> > On 2010-04-23 at 19:58:58 [+0200], x-otic@xxxxxxx<x-otic@xxxxxxx>  wrote:
> >> I'd like to contribute some work to Haiku, however have problems with
> >> compiling the sources.
> >> After having checked out the latest sources into a fresh Alpha 1 R1
> >> installation I get the error message
> >> that my gcc is not at the latest version.
> >> However, being a Windows developer I don't have a clue how to update to
> >> the new gcc.
> >>
> >> Although my first "Hello World!" window was compiled successfully using
> >> Paladin,
> >> compiling the StyledEdit failed.
> >> I'd like to face the Ticket #5535 (StyledEdit Enhancement).
> >> So, do you have a hint?
> >>      
> > The most easy solution would be to grab a nightly (gcc2/gcc4, same as the
> > alpha1) and install that on top of your installation. (This will only
> > replace the system folder, and merge the rest of folders. Perhaps remove
> > /boot/develop before installing the nightly on top.) It contains an 
> > updated
> > GCC package. Alternatively, you could hack the configure script to accept
> > your gcc version, there haven't really been any changes to GCC that would
> > require the new version.
> 
> Well, hacking the configure scripts worked just fine! Thanks!
> However, executing the binary raises the error message: "Could not open
> StyledEdit (Missing libraries: liblocale.so)."
> Copying the library from its original location to the StyledEdit folder
> did not help.

The correct location would a in "lib" directory alongside the executable. 
But...

> I suppose there should be a dedicated location for such libs...
> Or is it a debug-release inconsistency?

... while we're trying to be backwards binary compatible -- i.e. old apps 
run on newer Haiku versions -- there are no intentions to actively support 
running newer apps on older Haiku versions. Maybe copying liblocale.so 
works, but it is possible that newer versions of other libraries are 
required as well. Copying all of them into the lib subdirectory would 
prevent all possible inconsistencies between the libraries, but since 
Haiku's internal APIs (e.g. the syscall interface) and protocols (e.g. the 
libbe <-> app server protocol) don't necessarily remain stable between 
versions, the odds are that this won't work either.

Options are:

* Continue development under alpha 1. Then you have to use either an 
emulator (qemu) or a separate installation to test your changes. Not very 
convenient...

* Use a more recent trunk version as development platform. The trunk 
versions vary when it comes to stability (which is why monitoring the 
current developments and updating with care is a good idea), but mostly work 
well enough. As I wrote very recently, I whole-heartedly recommend a three 
partition setup: One partition with a system for building Haiku (can be 
Linux, FreeBSD or some stable Haiku), one partition for the Haiku system 
with no other data, so it can be replaced any time, and one partition with 
the data to use under Haiku (Haiku svn working directory,...). Frequent 
backups of the data partition are recommended.

CU, Ingo

Other related posts: