Re: [Harbour] openSUSE 32-bit build on 64-bit [update#1]

2010-01-10 Thread Viktor Szakáts
Hi Guy,

Thanks for the tip, this looks good.

I tried it with openSUSE, couldn't find debootstrap package 
for it (in std repository), so I can give it a try after 
I migrated to Ubuntu x64.

Anyway, if someone feels like trying this and report results 
it'd certainly be a useful experience.

Brgds,
Viktor

On 2010 Jan 10, at 09:48, Guy Roussin wrote:

> Hi Viktor,
> 
>> Anyhow until then my advice is to keep both 32-bit and 64-bit hosts if there 
>> is a need to produce for both targets. Debian is indeed even worse, and 
>> process varies from distro to distro and version by version. Hopefully one 
>> day distro makers will talk to each other and sort out the lib/lib32/lib64 
>> mess.
>> 
>>  
> 
> With debian/ubuntu you can use debootstrap to compile 32bits debian/ubuntu
> packages on 64bits distro (debian, ubuntu, redhat, opensuse, ...)
> 
> For exemple (sorry don't test) :
> 
> First install debootstrap package (depend on your distrib.: debootstrap is in 
> all distribs)
> # aptitude install debootstrap
> 
> # mkdir /home/guy/debian32
> # debootstrap --arch i386 lenny /home/guy/debian32 
> http://ftp.us.debian.org/debian/
> # chroot /home/guy/debian32
> 
> Install package to compile harbour :
> # aptitude install gcc binutils debhelper  ... subversion ...
> 
> get harbour (you can also copy it from your host ) :
> # svn ...
> 
> compile harbour with dpkg-buildpackage ...
> # cd .../harbour
> # dpkg-buildpackage -b
> 
> exit chroot :
> # exit
> 
> 
> With this, you can create debian/ubuntu package (32 and 64bits) on your 
> opensuse :-)
> 
> Hopes it help.
> 
> Guy
> 
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] openSUSE 32-bit build on 64-bit [update#1]

2010-01-10 Thread Guy Roussin

Hi Viktor,

Anyhow until then my advice is to keep both 32-bit and 
64-bit hosts if there is a need to produce for both 
targets. Debian is indeed even worse, and process varies 
from distro to distro and version by version. Hopefully 
one day distro makers will talk to each other and sort 
out the lib/lib32/lib64 mess.


  


With debian/ubuntu you can use debootstrap to compile 32bits debian/ubuntu
packages on 64bits distro (debian, ubuntu, redhat, opensuse, ...)

For exemple (sorry don't test) :

First install debootstrap package (depend on your distrib.: debootstrap 
is in all distribs)

# aptitude install debootstrap

# mkdir /home/guy/debian32
# debootstrap --arch i386 lenny /home/guy/debian32 
http://ftp.us.debian.org/debian/

# chroot /home/guy/debian32

Install package to compile harbour :
# aptitude install gcc binutils debhelper  ... subversion ...

get harbour (you can also copy it from your host ) :
# svn ...

compile harbour with dpkg-buildpackage ...
# cd .../harbour
# dpkg-buildpackage -b

exit chroot :
# exit


With this, you can create debian/ubuntu package (32 and 64bits) on your 
opensuse :-)


Hopes it help.

Guy


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] openSUSE 32-bit build on 64-bit [update#1]

2010-01-09 Thread Viktor Szakáts
> On Sat, 9 Jan 2010, Viktor Szakáts wrote:
> 
>>  I'm not sure if it's missing package or something missing from our .mk 
>> files. [TOFIX?]
>>  As far as I can tell, a libX11.so lib _was_ installed in 32-bit lib dir.
>>  This can be solved using this ugly hack: [update#1]
>> $ cd /usr/lib
>> $ sudo ln -s libX11.so.6 libX11.so
> 
> i personally have feelings against this, but it seems to be in line 
> with the how to compile wine64 on suse document at 
> http://wiki.winehq.org/WineOn64bit, which in it's own right might be 
> useful, given the sort-of similarity of the situation.

I have serious trouble to accept such solution either, 
so I really just posted it here to give a feel about the 
process (which is quite like pissing against the wind), 
and to give a full coverage of the issues I met, plus in 
the hope that maybe someone can suggest anything better.

Anyhow until then my advice is to keep both 32-bit and 
64-bit hosts if there is a need to produce for both 
targets. Debian is indeed even worse, and process varies 
from distro to distro and version by version. Hopefully 
one day distro makers will talk to each other and sort 
out the lib/lib32/lib64 mess.

The wine link pretty much paints the picture in its whole 
sadness.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] openSUSE 32-bit build on 64-bit [update#1]

2010-01-09 Thread Tamas TEVESZ
On Sat, 9 Jan 2010, Viktor Szakáts wrote:

 >   I'm not sure if it's missing package or something missing from our .mk 
 > files. [TOFIX?]
 >   As far as I can tell, a libX11.so lib _was_ installed in 32-bit lib dir.
 >   This can be solved using this ugly hack: [update#1]
 >  $ cd /usr/lib
 >  $ sudo ln -s libX11.so.6 libX11.so

i personally have feelings against this, but it seems to be in line 
with the how to compile wine64 on suse document at 
http://wiki.winehq.org/WineOn64bit, which in it's own right might be 
useful, given the sort-of similarity of the situation.

-- 
[-]

mkdir /nonexistent
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] openSUSE 32-bit build on 64-bit [update#1]

2010-01-09 Thread Viktor Szakáts
> So to reiterate, what is the 'official' way to build an 32-bit 
> .rpm on a 64-bit host?

[update#1]

I finished the cross 32-bit/64-bit build on openSUSE, with following list of 
issues:

- '-32bit' postfixed packages had to be installed first. Now documented in 
INSTALL.
- gpm-devel isn't recognized on openSUSE 11.2, it uses the name 'gpm' [TOFIX]
- '--without x11' had to be used, otherwise it fails with error in dynlib 
generation phase.
  I'm not sure if it's missing package or something missing from our .mk files. 
[TOFIX?]
  As far as I can tell, a libX11.so lib _was_ installed in 32-bit lib dir.
  This can be solved using this ugly hack: [update#1]
 $ cd /usr/lib
 $ sudo ln -s libX11.so.6 libX11.so
- curl had to be manually deleted from harbour.spec, since I found no better 
  way to suppress it and it causes problems because libcurl developers decided 
(around 7.19.x)
  to use to platform dependent header files, which fail in cross-platform 
situations.
  [ pretty bad direction, so it's good to look around for a better replacement. 
]
  This was the error, for reference:
/usr/include/curl/curlrules.h:144: error: size of array ‘__curl_rule_01__’ 
is negative
/usr/include/curl/curlrules.h:154: error: size of array ‘__curl_rule_02__’ 
is negative
  [TOFIX: Find a way to suppress it for such cross-builds]
- -m32 option had to be manually added to harbour.spec CFLAFGS/LDFLAGS/DFLAGS 
build options to force 32-bit build.
  [TOFIX]
- the generated .rpm had the postfix 'sus112.x86_64' because mpkg_rpm.sh 
doesn't 
  recognize this cross-build situation.
  [TOFIX]
- another crucial issue that inside the generated .rpm the lib dir is lib64, 
which 
  is wrong, and most probably a --target=i386 (or simiar) rpmbuild switch is 
  also required to mark their architecture. [update#1]
  [TOFIX]

I'd appreciate if Linux experts could help addressing these.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour