Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2007-11

compile fpc for i386 from a 64 bit machine

16 messages · 7 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Alvise Nicoletti

Hi... I need to cross-compile an application in a 64 bit environment, (fully working with lazarus 0.9.23 and FPC 2.2.1), for 32 bits archs.

I tryed to follow this guide:
http://wiki.lazarus.freepascal.org/Cross_compiling

But I have the following errors:
/home/siteland/lazarus/FPC_2.2.1/compiler/ppc -Ur -Xs -O2 -n -Fui386 -Fusystems -Fu/home/siteland/lazarus/FPC_2.2.1/rtl/units/x86_64-linux -Fii386 -FE. -FUi386/units/x86_64-linux -Cg -dRELEASE -di386 -dGDB -dBROWSERLOG -Fux86 pp.pas
fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time
fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time
fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time
fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time
cutils.pas(148,1) Fatal: There were 4 errors compiling module, stopping

This is my arch:
Linux myserver 2.6.15-28-amd64-server #1 SMP Wed Jul 18 23:04:02 UTC 2007 x86_64 GNU/Linux

Alvise Nicoletti

Reply by email

Florian Klaempfl
to Alvise Nicoletti
Show quoted text 24 lines
Hi... I need to cross-compile an application in a 64 bit environment, (fully working with lazarus 0.9.23 and FPC 2.2.1), for 32 bits archs. I tryed to follow this guide: http://wiki.lazarus.freepascal.org/Cross_compiling But I have the following errors: /home/siteland/lazarus/FPC_2.2.1/compiler/ppc -Ur -Xs -O2 -n -Fui386 -Fusystems -Fu/home/siteland/lazarus/FPC_2.2.1/rtl/units/x86_64-linux -Fii386 -FE. -FUi386/units/x86_64-linux -Cg -dRELEASE -di386 -dGDB -dBROWSERLOG -Fux86 pp.pas fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time cutils.pas(148,1) Fatal: There were 4 errors compiling module, stopping This is my arch: Linux myserver 2.6.15-28-amd64-server #1 SMP Wed Jul 18 23:04:02 UTC 2007 x86_64 GNU/Linux

Well, as the error says, this is currently not supported.

Reply by email

Joost van der Sluis
to Alvise Nicoletti: Hi... I need to cross-compile an application in a 64 bit environment, (fully working with…

Op donderdag 29-11-2007 om 10:19 uur [tijdzone +0100], schreef Alvise Nicoletti:

Show quoted text 24 lines
Hi... I need to cross-compile an application in a 64 bit environment, (fully working with lazarus 0.9.23 and FPC 2.2.1), for 32 bits archs. I tryed to follow this guide: http://wiki.lazarus.freepascal.org/Cross_compiling But I have the following errors: /home/siteland/lazarus/FPC_2.2.1/compiler/ppc -Ur -Xs -O2 -n -Fui386 -Fusystems -Fu/home/siteland/lazarus/FPC_2.2.1/rtl/units/x86_64-linux -Fii386 -FE. -FUi386/units/x86_64-linux -Cg -dRELEASE -di386 -dGDB -dBROWSERLOG -Fux86 pp.pas fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to i386 is not yet supported at this time cutils.pas(148,1) Fatal: There were 4 errors compiling module, stopping This is my arch: Linux myserver 2.6.15-28-amd64-server #1 SMP Wed Jul 18 23:04:02 UTC 2007 x86_64 GNU/Linux

Most linux-distubutions do support 32 bit and 64 bit at the same time. So you can just install the 32-bit fpc-compiler on your system, and use this compiler to create 32-bit applications on your 64/32-bit OS.

Joost.

Reply by email

Alvise Nicoletti
to Florian Klaempfl: Well, as the error says, this is currently not supported.

Florian Klaempfl ha scritto:

Show quoted text 36 lines
Alvise Nicoletti schrieb: > Hi... I need to cross-compile an application in a 64 bit environment, > (fully working with lazarus 0.9.23 and FPC 2.2.1), for 32 bits archs. > > I tryed to follow this guide: > http://wiki.lazarus.freepascal.org/Cross_compiling > > But I have the following errors: > /home/siteland/lazarus/FPC_2.2.1/compiler/ppc -Ur -Xs -O2 -n -Fui386 > -Fusystems -Fu/home/siteland/lazarus/FPC_2.2.1/rtl/units/x86_64-linux > -Fii386 -FE. -FUi386/units/x86_64-linux -Cg -dRELEASE -di386 -dGDB > -dBROWSERLOG -Fux86 pp.pas > fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to > i386 is not yet supported at this time > fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to > i386 is not yet supported at this time > fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to > i386 is not yet supported at this time > fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to > i386 is not yet supported at this time > cutils.pas(148,1) Fatal: There were 4 errors compiling module, stopping > > This is my arch: > Linux myserver 2.6.15-28-amd64-server #1 SMP Wed Jul 18 23:04:02 UTC > 2007 x86_64 GNU/Linux > Well, as the error says, this is currently not supported. _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Mhh... what is not supported? The creation of a 32 bit binary file from a 64 bit linux?

Is there any other solution? I can also use a pre-compiled one if it comprehends the current bugfixes of fpc... (2.2.1)

I have a virtual machine at 32 bits but keeping both updated is hard and buggy... I'd like to crosscompile from that 64 bit one...

Reply by email

Daniël Mantione
to Joost van der Sluis: Op donderdag 29-11-2007 om 10:19 uur [tijdzone +0100], schreef Alvise Nicoletti: Most…

Op Thu, 29 Nov 2007, schreef Joost van der Sluis:

Most linux-distubutions do support 32 bit and 64 bit at the same time. So you can just install the 32-bit fpc-compiler on your system, and use this compiler to create 32-bit applications on your 64/32-bit OS.

Distribution support is not even necessary, for example, we have the i386 version installed on Scenergy (without any 32-bit distro support) and it runs without trouble. Of course you cannot link to external libraries in such case, because they are not installed.

Daniël

Reply by email

Alvise Nicoletti
to Daniël Mantione

Daniël Mantione ha scritto:

Show quoted text 26 lines
Op Thu, 29 Nov 2007, schreef Joost van der Sluis: > Most linux-distubutions do support 32 bit and 64 bit at the same time. > So you can just install the 32-bit fpc-compiler on your system, and use > this compiler to create 32-bit applications on your 64/32-bit OS. > Distribution support is not even necessary, for example, we have the i386 version installed on Scenergy (without any 32-bit distro support) and it runs without trouble. Of course you cannot link to external libraries in such case, because they are not installed. Daniël ------------------------------------------------------------------------ _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel ------------------------------------------------------------------------ No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.16.9/1158 - Release Date: 28/11/2007 21.11

Yes, I have the packages needed to open a 32 bit file in my 64 bits distro (ubuntu-server): .
linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 lib32bz2-dev

But the fpc compiler version I'm using have bugfixes introduced by Joost that are needed in my application, so I will also need a 32 bit fpc compiler with that inside it...
... or I am wrong?

Reply by email

Jonas Maebe
to Alvise Nicoletti: Florian Klaempfl ha scritto: Mhh... what is not supported? The creation of a 32 bit…

Alvise Nicoletti wrote on do, 29 nov 2007:

Show quoted text 14 lines
Florian Klaempfl ha scritto: > Alvise Nicoletti schrieb: > >> fpcdefs.inc(111,2) Error: User defined: Cross-compiling from non-i386 to >> i386 is not yet supported at this time >> cutils.pas(148,1) Fatal: There were 4 errors compiling module, stopping >> >> This is my arch: >> Linux myserver 2.6.15-28-amd64-server #1 SMP Wed Jul 18 23:04:02 UTC >> 2007 x86_64 GNU/Linux >> >>> Well, as the error says, this is currently not supported. > Mhh... what is not supported?

Compiling i386 code with a non-i386 hosted compiler is not supported. It has nothing to do with 32 vs 64 bit (an x86_64 hosted compiler can perfectly create sparc32 or ppc32 code), but with the extended floating point type which we do not support on all non-i386 platformas (although I believe it actually is supported on linux/x86_64 unlike on win64/x86_64, so maybe the check could be refined).

Jonas

---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.

Reply by email

Daniël Mantione
to Alvise Nicoletti: Daniël Mantione ha scritto: Yes, I have the packages needed to open a 32 bit file in my…

Op Thu, 29 Nov 2007, schreef Alvise Nicoletti:

Show quoted text 8 lines
Yes, I have the packages needed to open a 32 bit file in my 64 bits distro (ubuntu-server): . linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 lib32bz2-dev But the fpc compiler version I'm using have bugfixes introduced by Joost that are needed in my application, so I will also need a 32 bit fpc compiler with that inside it... ... or I am wrong?

Nothing stops you from compiling a 2.2.1 i386 compiler on an x86_64 system. It just needs to be bootstrapped with a ppc386, simply do:

make FPC=/path/to/ppc386 CPU_SOURCE=i386

... and voila.

Daniël

Reply by email

Alvise Nicoletti
to Daniël Mantione

Daniël Mantione ha scritto:

Show quoted text 20 lines
Op Thu, 29 Nov 2007, schreef Alvise Nicoletti: > Yes, I have the packages needed to open a 32 bit file in my 64 bits distro > (ubuntu-server): . > linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 lib32bz2-dev > > But the fpc compiler version I'm using have bugfixes introduced by Joost that > are needed in my application, so I will also need a 32 bit fpc compiler with > that inside it... > ... or I am wrong? > Nothing stops you from compiling a 2.2.1 i386 compiler on an x86_64 system. It just needs to be bootstrapped with a ppc386, simply do: make FPC=/path/to/ppc386 CPU_SOURCE=i386 ... and voila.

Honestly I had some problems to understand the mechanism in this, however, giving that command suppose that you have a "/path/to/ppc386" somewhere, and I hadn't.
I copyed the binary of my other 32 bit server in the 64 bit server, in the path: /usr/local/lib/fpc/2.2.1/ppc386
And I did, as you said, a:
make all FPC=/usr/local/lib/fpc/2.2.1/ppc386 CPU_SOURCE=i386

That seemed to work, it compiled everything, but now I suppose I have to do a "make install"...

But both:
make install CPU_TARGET=i386
make install CPU_SOURCE=i386

Gives errors.

Where is the created ppc386 file?
With I locate I find it there:
/home/siteland/lazarus/FPC_2.2.1/compiler/ppc386

And /home/siteland/lazarus/FPC_2.2.1/ is the "root" path of my compilation.

Should I use that as new fpc-compiler for my 32 bit projects?

Alvise

Show quoted text 13 lines
Daniël ------------------------------------------------------------------------ _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel ------------------------------------------------------------------------ No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.16.9/1158 - Release Date: 28/11/2007 21.11

Reply by email

Marc Weustink
to Alvise Nicoletti
Alvise Nicoletti wrote 39 lines
Daniël Mantione ha scritto: > Op Thu, 29 Nov 2007, schreef Alvise Nicoletti: > > >> Yes, I have the packages needed to open a 32 bit file in my 64 bits >> distro >> (ubuntu-server): . >> linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 >> lib32bz2-dev >> >> But the fpc compiler version I'm using have bugfixes introduced by >> Joost that >> are needed in my application, so I will also need a 32 bit fpc >> compiler with >> that inside it... >> ... or I am wrong? >> > > Nothing stops you from compiling a 2.2.1 i386 compiler on an x86_64 > system. It just needs to be bootstrapped with a ppc386, simply do: > > make FPC=/path/to/ppc386 CPU_SOURCE=i386 > > ... and voila. > Honestly I had some problems to understand the mechanism in this, however, giving that command suppose that you have a "/path/to/ppc386" somewhere, and I hadn't. I copyed the binary of my other 32 bit server in the 64 bit server, in the path: /usr/local/lib/fpc/2.2.1/ppc386 And I did, as you said, a: make all FPC=/usr/local/lib/fpc/2.2.1/ppc386 CPU_SOURCE=i386 That seemed to work, it compiled everything, but now I suppose I have to do a "make install"... But both: make install CPU_TARGET=i386 make install CPU_SOURCE=i386
try
  make install CPU_SOURCE=i386 FPC=/path/to/your/fresh/compiled/ppc386

Marc

Reply by email

Alvise Nicoletti
to Marc Weustink

Marc Weustink ha scritto:

Show quoted text 43 lines
Alvise Nicoletti wrote: > Daniël Mantione ha scritto: >> Op Thu, 29 Nov 2007, schreef Alvise Nicoletti: >> >> >>> Yes, I have the packages needed to open a 32 bit file in my 64 bits >>> distro >>> (ubuntu-server): . >>> linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 >>> lib32bz2-dev >>> >>> But the fpc compiler version I'm using have bugfixes introduced by >>> Joost that >>> are needed in my application, so I will also need a 32 bit fpc >>> compiler with >>> that inside it... >>> ... or I am wrong? >>> >> >> Nothing stops you from compiling a 2.2.1 i386 compiler on an x86_64 >> system. It just needs to be bootstrapped with a ppc386, simply do: >> >> make FPC=/path/to/ppc386 CPU_SOURCE=i386 >> >> ... and voila. >> > Honestly I had some problems to understand the mechanism in this, > however, giving that command suppose that you have a > "/path/to/ppc386" somewhere, and I hadn't. > I copyed the binary of my other 32 bit server in the 64 bit server, > in the path: /usr/local/lib/fpc/2.2.1/ppc386 > And I did, as you said, a: > make all FPC=/usr/local/lib/fpc/2.2.1/ppc386 CPU_SOURCE=i386 > > That seemed to work, it compiled everything, but now I suppose I have > to do a "make install"... > > But both: > make install CPU_TARGET=i386 > make install CPU_SOURCE=i386 try make install CPU_SOURCE=i386 FPC=/path/to/your/fresh/compiled/ppc386

Thank you, that seemed to work.

However,
1) going on lazarus and choosing ppc386 as compiler, I got no errors (also the project in the "code" section of "compiler options" is set to i386).
2) the project compiles well
3) I fail during the link process with that error: "/usr/bin/ld: skipping incompatible /usr/lib/crti.o when searching for /usr/lib/crti.o"

The file /usr/lib/crti.o exists.

In the guide: http://wiki.lazarus.freepascal.org/Cross_compiling something about a ld script was written, I created the scripts as indicated (plus chmod +x), but I have not launched them.

I have to do something related to this?

Alvise

Show quoted text 10 lines
Marc _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply by email

Marc Weustink
to Alvise Nicoletti
Alvise Nicoletti wrote 55 lines
Marc Weustink ha scritto: > Alvise Nicoletti wrote: >> Daniël Mantione ha scritto: >>> Op Thu, 29 Nov 2007, schreef Alvise Nicoletti: >>> >>> >>>> Yes, I have the packages needed to open a 32 bit file in my 64 bits >>>> distro >>>> (ubuntu-server): . >>>> linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 >>>> lib32bz2-dev >>>> >>>> But the fpc compiler version I'm using have bugfixes introduced by >>>> Joost that >>>> are needed in my application, so I will also need a 32 bit fpc >>>> compiler with >>>> that inside it... >>>> ... or I am wrong? >>>> >>> >>> Nothing stops you from compiling a 2.2.1 i386 compiler on an x86_64 >>> system. It just needs to be bootstrapped with a ppc386, simply do: >>> >>> make FPC=/path/to/ppc386 CPU_SOURCE=i386 >>> >>> ... and voila. >>> >> Honestly I had some problems to understand the mechanism in this, >> however, giving that command suppose that you have a >> "/path/to/ppc386" somewhere, and I hadn't. >> I copyed the binary of my other 32 bit server in the 64 bit server, >> in the path: /usr/local/lib/fpc/2.2.1/ppc386 >> And I did, as you said, a: >> make all FPC=/usr/local/lib/fpc/2.2.1/ppc386 CPU_SOURCE=i386 >> >> That seemed to work, it compiled everything, but now I suppose I have >> to do a "make install"... >> >> But both: >> make install CPU_TARGET=i386 >> make install CPU_SOURCE=i386 > > try > make install CPU_SOURCE=i386 FPC=/path/to/your/fresh/compiled/ppc386 Thank you, that seemed to work. However, 1) going on lazarus and choosing ppc386 as compiler, I got no errors (also the project in the "code" section of "compiler options" is set to i386). 2) the project compiles well 3) I fail during the link process with that error: "/usr/bin/ld: skipping incompatible /usr/lib/crti.o when searching for /usr/lib/crti.o" The file /usr/lib/crti.o exists.

you should have a libdir with 32bit libs and a libdir with 64 bit libs

Edit your fpc.cfg and search for lines beginning with -Fl Add similar lines pointing to the 32bit libdir.

Show quoted text 5 lines
In the guide: http://wiki.lazarus.freepascal.org/Cross_compiling something about a ld script was written, I created the scripts as indicated (plus chmod +x), but I have not launched them. I have to do something related to this?

the compiler will do when needed. You already got beyond that: ld is called (since it complains that it cannot find valid libs)

Marc

Reply by email

Alvise Nicoletti
to Marc Weustink

Marc Weustink ha scritto:

Show quoted text 82 lines
Alvise Nicoletti wrote: > Marc Weustink ha scritto: >> Alvise Nicoletti wrote: >>> Daniël Mantione ha scritto: >>>> Op Thu, 29 Nov 2007, schreef Alvise Nicoletti: >>>> >>>> >>>>> Yes, I have the packages needed to open a 32 bit file in my 64 >>>>> bits distro >>>>> (ubuntu-server): . >>>>> linux32 ia32-libs lib32gcc1 lib32stdc++6 lib32z1 libc6-dev-i386 >>>>> lib32bz2-dev >>>>> >>>>> But the fpc compiler version I'm using have bugfixes introduced >>>>> by Joost that >>>>> are needed in my application, so I will also need a 32 bit fpc >>>>> compiler with >>>>> that inside it... >>>>> ... or I am wrong? >>>>> >>>> >>>> Nothing stops you from compiling a 2.2.1 i386 compiler on an >>>> x86_64 system. It just needs to be bootstrapped with a ppc386, >>>> simply do: >>>> >>>> make FPC=/path/to/ppc386 CPU_SOURCE=i386 >>>> >>>> ... and voila. >>>> >>> Honestly I had some problems to understand the mechanism in this, >>> however, giving that command suppose that you have a >>> "/path/to/ppc386" somewhere, and I hadn't. >>> I copyed the binary of my other 32 bit server in the 64 bit server, >>> in the path: /usr/local/lib/fpc/2.2.1/ppc386 >>> And I did, as you said, a: >>> make all FPC=/usr/local/lib/fpc/2.2.1/ppc386 CPU_SOURCE=i386 >>> >>> That seemed to work, it compiled everything, but now I suppose I >>> have to do a "make install"... >>> >>> But both: >>> make install CPU_TARGET=i386 >>> make install CPU_SOURCE=i386 >> >> try >> make install CPU_SOURCE=i386 FPC=/path/to/your/fresh/compiled/ppc386 > Thank you, that seemed to work. > > However, > 1) going on lazarus and choosing ppc386 as compiler, I got no errors > (also the project in the "code" section of "compiler options" is set > to i386). > 2) the project compiles well > 3) I fail during the link process with that error: "/usr/bin/ld: > skipping incompatible /usr/lib/crti.o when searching for > /usr/lib/crti.o" > > The file /usr/lib/crti.o exists. you should have a libdir with 32bit libs and a libdir with 64 bit libs Edit your fpc.cfg and search for lines beginning with -Fl Add similar lines pointing to the 32bit libdir. > In the guide: http://wiki.lazarus.freepascal.org/Cross_compiling > something about a ld script was written, I created the scripts as > indicated (plus chmod +x), but I have not launched them. > > I have to do something related to this? the compiler will do when needed. You already got beyond that: ld is called (since it complains that it cannot find valid libs) Marc _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel

I added a /usr/lib32 link to the fpc.cfg, however I have no "crti.o" in the /usr/lib32/ folder.
I got the same error trying to cross-compile to a i386 target.

/usr/lib/crti.o is a "ELF 64-bit LSB relocatable, AMD x86-64, version 1 (SYSV), not stripped"

Who should compile/provide that library at 32 bits?

p.s. so I will have to change the fpc.cfg every time I want to crosscompile? or there is a IFDEF(initive) solution?

Reply by email

Daniël Mantione
to Alvise Nicoletti

Op Thu, 29 Nov 2007, schreef Alvise Nicoletti:

Show quoted text 8 lines
I added a /usr/lib32 link to the fpc.cfg, however I have no "crti.o" in the /usr/lib32/ folder. I got the same error trying to cross-compile to a i386 target. /usr/lib/crti.o is a "ELF 64-bit LSB relocatable, AMD x86-64, version 1 (SYSV), not stripped" Who should compile/provide that library at 32 bits?

Your distro.

Daniël

p.s. so I will have to change the fpc.cfg every time I want to crosscompile? or there is a IFDEF(initive) solution?

You can add both directories, the linker will skip the unusable one. If constructions are also possible by the way.

Daniël

Reply by email

Alvise Nicoletti
to Daniël Mantione

Daniël Mantione ha scritto:

Show quoted text 15 lines
Op Thu, 29 Nov 2007, schreef Alvise Nicoletti: > I added a /usr/lib32 link to the fpc.cfg, however I have no "crti.o" in the > /usr/lib32/ folder. > I got the same error trying to cross-compile to a i386 target. > > /usr/lib/crti.o is a "ELF 64-bit LSB relocatable, AMD x86-64, version 1 > (SYSV), not stripped" > > Who should compile/provide that library at 32 bits? > Your distro.

There I see only the 64 bit libs, I will try to ask in some ubuntu forum if I can install also the 32 bit libs without destroying the server (as I did yesterday cause I moved with "mv" a lib that was required by "mv" itself, restoring it this morning with a live cd).

Also now I have that error while linking at 64 bits (even if I reinstated the original configuration/situation):
/usr/lib/fpc/2.2.1/units/x86_64-linux/rtl/cthreads.o: In function `CTHREADS_LOADPTHREADS$$BOOLEAN':cthreads.pp:(.text+0x11): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking /usr/bin/../lib/libdl.a(dlopen.o): In function `dlopen': undefined reference to `__dlopen'
/usr/bin/../lib/libdl.a(dlclose.o): In function `dlclose': undefined reference to `__dlclose'
/usr/bin/../lib/libdl.a(dlsym.o): In function `dlsym': undefined reference to `__dlsym'
PoolPatrol.lpr(185,1) Error: Error while linking
PoolPatrol.lpr(185,1) Fatal: There were 1 errors compiling module, stopping

That's probably the end of that computer lazarus installation, I can't risk to mess up the libs again.

Thank you for the support, it's a pity that I was so close.

p.s. the wiki guide should be a little updated.

Show quoted text 23 lines
Daniël > p.s. so I will have to change the fpc.cfg every time I want to crosscompile? > or there is a IFDEF(initive) solution? > You can add both directories, the linker will skip the unusable one. If constructions are also possible by the way. Daniël ------------------------------------------------------------------------ _______________________________________________ fpc-devel maillist - http://lists.freepascal.org/mailman/listinfo/fpc-devel ------------------------------------------------------------------------ No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.16.9/1158 - Release Date: 28/11/2007 21.11

Reply by email

Giulio Bernardi
to Alvise Nicoletti
That's probably the end of that computer lazarus installation, I can't risk to mess up the libs again.

Personally, I use a 32 bit chroot environment to avoid headaches. The only drawback is that you need root privileges to run chroot. I wrote some bash scripts (very ugly and without error checking, since I never wrote bash scripts before) that help setting up a 32 bit chroot environment. They are thought for fedora, but should work on any system with rpm2cpio installed.

If you want you can contact me in private so that we can speak Italian :)

bye,
Giulio

_________________________________________________________________ News, entertainment and everything you care it now! http://www.live.com/getstarted.aspx

Reply by email