Closed ghost closed 8 years ago
I have (just today) changed the setting to ignore the version check when using old (2.6.2) bootstrap compilers. I hope that one day, recent compilers will be made available. So, first time users will be able to carry on. The only automatic solution I can think of is, that fpcup searches the system for a more recent compiler than available online.
On 11/26/2015 08:52 AM, LongDirtyAnimAlf wrote:
I have (just today) changed the setting to ignore the version check when using old (2.6.2) bootstrap compilers. I hope that one day, recent compilers will be made available.
is that really a good idea? won't some features be lost as not supported in the older compiler... doesn't that setting also lead to no support when it is discovered that it is used??
So, first time users will be able to carry on. The only automatic solution I can think of is, that fpcup searches the system for a more recent compiler than available online.
the 2.6.4 compiler /should/ be available online... pretty near to where the existing 2.6.2 one is located... right??? especially with 2.6.4 having been out for as long as it has been and even moreso with 3.0.0 being released now...
On 11/26/2015 10:02 AM, LongDirtyAnimAlf wrote:
Look here: http://forum.lazarus.freepascal.org/index.php/topic,29452
ugh... it does appear to be a bit of a mess :?
NOTE: No off-list assistance is given without prior approval. Please keep mailing list traffic on the list unless private contact is specifically requested and granted.
Not really.
The core developers want you to install FPC and Lazarus the prescribed way. This way, they can be sure that problems are not caused by an incorrect install.
However, this (correct install) <> (easy install) !!
This is were fpcup enters the arena: easy install, but sometimes also an install not according to the books !!
Since r32335, FPC-trunk really needs 2.6.4 to build, so no luck even with the version check override (overloading the <>
operator). According to the forum topic, you're supposed to use the 386-to-x64 crosscompiler, which is available ( ftp://ftp.freepascal.org/pub/fpc/dist/2.6.4/bootstrap/x86_64-win64-ppcrossx64.zip ) as a bootstrap binary. Maybe fpcup can use that?
I just did a testrun with fpcup for installing trunk. And it works as expected on my system. Could you please give me more details about the problem with trunk ?
Build host is Windows (x64), I haven't tested on Linux. fpcup.exe + fpcup64.exe are current as of yesterday.
Building ppc386.exe + full rtl for i386-win32 from trunk using 2.6.4 as bootstrap (downloaded by fpcup.exe) works fine.
Building ppcx64.exe + full rtl for x86_64-win64 from trunk using 2.6.2 as bootstrap (downloaded by fpcup64.exe) fails on the new types.pas:
typshrdh.inc(54,23) Error: It is not possible to overload this operator. Related overloadable operators (if any) are:
typshrdh.inc(54,24) Error: It is not possible to overload this operator. Related overloadable operators (if any) are:
typshrdh.inc(54,24) Fatal: Syntax error, ":" expected but ">" found
Fatal: Compilation aborted
Ok. Now I understand !
Unfortunately, fpcup(64) cannot do wonders ... It needs online resources. If these are not available, it will fail. There is no recent bootstrap compiler for Win64. There is also no official FPC Win64 version available for download. Most is based on 32 bit and crosscompile to 64 bit. http://www.freepascal.org/down/i386/win32-netherlands.var
Fpcup could be made to build an intermediate 2.6.4 compiler with the 2.6.2 bootstrap, but I think that would be overkill.
I'm fairly certain there was a good reason for building native win64 compilers instead of using crosscompilers back when I started doing trunk snapshots, so it'd be good to be able to continue doing so ;)
Fpcup could be made to build an intermediate 2.6.4 compiler with the 2.6.2 bootstrap, but I think that would be overkill.
Yes, I had seen the part related to that in the code (Win64FallBackUsingCrossCompiler
)...
Technically, I'd expect the recommended bootstrap for trunk to become 3.0.0 in the not-too-far future anyway since it's always the previous release version, so I think I'll see if I can build my own bootstrap from /tags/release_3_0_0 and use these.
I will close this issue for now. The lack of a 2.6.4 bootstrap for Win64 is not an issue of fpcup. But it would be very welcome for fpcup64 !
On 11/30/2015 11:15 AM, LongDirtyAnimAlf wrote:
I will close this issue for now. The lack of a 2.6.4 bootstrap for Win64 is not an issue of fpcup. But it would be very welcome for fpcup64 !
FWIW: i was also confused by the first post mentioning, i think, linux... it was later that clarity for the winwhatever situation came up...
In retrospect, yes, I may have hijacked an issue that was about a different issue originally. Apologies.
I have enabled Win64FallBackUsingCrossCompiler ! It should allow for an easy Win64 FPC compiler. Reports are welcome !! So, just run fpcup64.exe, and it should give you Win64 FPC.
On 12/01/2015 04:21 PM, LongDirtyAnimAlf wrote:
Reopened #7 https://github.com/LongDirtyAnimAlf/Reiniero-fpcup/issues/7.
was this reopened because of the disparity between the original report being linux and the follow on discussions being about winwhatever?
just curious
Not quite. I did not change that much code. It is just that Reinier, the Original author, created this possibility for Win64. If working and wanted, it can be made into a standard procedure for missing bootstrap compilers ! So, I just want feedback. And also: if you tell me you want this, I will look into expanding towards Linux and others..
In my opinion Win64FallBackUsingCrossCompiler = true is wrong way
If I use fpc trunk I have error "makefile:2873: *\ The only supported starting compiler version is 2.6.4. You are trying to build with 3.1.1.. Stop."
This option Win64FallBackUsingCrossCompiler build from curent source If I have trunk i have 3.1.1
In my opinion better way for my windows x64 is Win64FallBackUsingCrossCompiler = false and use this official 2.6.4 If you need download file ppcx64.exe I publish it on github https://github.com/mariuszekpl/fpc_2.6.4_x64 It is from official http://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2064%20bits/Lazarus%201.4.2/
OT: Lazarus commit 50542: "trunk: set version to 1.7" ;)
if we can steer this (back???) over to linux... as i previously mentioned, i was confused by the OP showing linux in the description... does the linux fpcup still try to grab the 2.6.2 or has this been amended for it to grab the 2.6.4 for both x32 and x64???
Fpcup can only use the public available bootstrap compilers.
ftp://ftp.freepascal.org/pub/fpc/dist/3.0.0/bootstrap/ ftp://ftp.freepascal.org/pub/fpc/dist/2.6.4/bootstrap/ ftp://ftp.freepascal.org/pub/fpc/dist/2.6.2/bootstrap/
I try to update fpcup every time there is a new bootstrap compiler available for a certain architecture.
@mariuszekpl : Thanks for your offer !! Very kind. But fpcup will for sure only use the officially available bootstrappers !
To use trunk, just install fpcup default (now: 3.0.0). It will put the 3.0.0 compiler that it made into the bootstrap directory. Run fpcup again to make trunk !
Just tried the above on Mac OSX. Works as expected (for RTTI branch that I need for the great mORMot).
Note that as of fpc r32960 3.0.0 is the ONLY supported starting compiler for fpc trunk. Not only officially, but now also materially. 2.6.4 as starting compiler has been removed.
Btw: compliments. fpcup is getting more and more useful. I still stick to my build-farm for serious builds, but now and then I actually use it.
I just noticed that fpclazup64 still selects 2.6.4 for trunk even if default is build. Note that it should select 3.0.0 as from today as per the above. I guess the same goes for the other versions. I had to correct this by hand and pulled in my own build for ppc386 3
Just updated. Please report back !
Works great for FPC 3.1.1. Lazarus trunk builds but has major issues combined with fpc trunk that makes it unusable so reverted to 1.5 but that has nothing to do with fpcup of course. fpclazup does its job as advertised.
Thanks for feedback. Glad it works. Closing !
I always build with --lazURL=trunk --fpcURL=trunk But about 2 weeks ago I can't build FPC I was looking for what is the problem and found too old version bootstrap compiler
Deafault fpcup_linux_x64 and fpcup64.exe download 2.6.2 but minimal is 2.6.4 to build FPC
For me solution is --lazURL=trunk --fpcURL=trunk --fpcbootstrapdir=....
Is there any automatic solution for this problem ? I'm thinking about the people who first use fpcup,