I am writing you all to inquire about the status of the GNU Pascal compiler on FreeBSD. It is mentioned quite prominently on the gpc homepage as a supported platform, yet it is not in the FreeBSD ports collection. Browsing the archives on gnu-pascal.de shows some intermittent interest, but no real success stories, at least for recent OS versions.
I have quite some old pascal code that I would like to use with the rest of the GNU compiler family. gpc would seem to be the way to go, if that would be possible.
Could anyone share with me what the status of gpc is on FreeBSD? For what it's worth, I'm running FreeBSD 5.2.1 with gcc 3.3.3.
Frank Jahnke
Frank Jahnke wrote:
I am writing you all to inquire about the status of the GNU Pascal compiler on FreeBSD. It is mentioned quite prominently on the gpc homepage as a supported platform, yet it is not in the FreeBSD ports collection. Browsing the archives on gnu-pascal.de shows some intermittent interest, but no real success stories, at least for recent OS versions.
I have quite some old pascal code that I would like to use with the rest of the GNU compiler family. gpc would seem to be the way to go, if that would be possible.
Could anyone share with me what the status of gpc is on FreeBSD? For what it's worth, I'm running FreeBSD 5.2.1 with gcc 3.3.3.
There have been a few small problems which should have been fixed in the last alpha (20030830). I've tested on netbsd last year. Did you try building it yourself? If there are problems, you can report them here and we'll try to fix them. Otherwise, someone "just" needs to make a FreeBSD port out of it. I don't know how this works exactly (and I won't be able to help much there since I'm busy enough already), but I suppose if the manual build procedure works, it shouldn't be difficult.
Frank
I've not tried the manual gpc installation yet -- I thought it prudent first to inquire as I become mare familiar with how to do this.
A few questions have come up:
Has anyone tried to install gpc with gcc 3.3.3? I note that the latest alpha release uses 3.3.2, and that usually these dot releases are (minor) bug fixes. Would there be any expected issues using 3.3.3? I would like to maintain compatibility with the C and Fortran compilers I'm using, and interlinkability is a MAJOR advantage.
Is the latest alpha release reasonably stable, at least for straightforward numerical code? I'm not really a compiler debugger...
Does the manual install work with any of the FreeBSD tools? I understand that GNU Pascal would use GNU tools, but FreeBSD has a complete complement of these (yacc, awk and nawk, sed, and so forth). Which of the FreeBSD tools (if any) should I be able to use? My hesitation is that any new tool (gawk, for example) really should be tested before it is relied upon, and the more new tools that are installed, the greater the burden becomes. The FreeBSD tools I have used enough to have confidence in (and they are supported).
The FreeBSD people are indeed looking for someone to do the port and to maintain it, though without much vigor. I'm not experienced in the port process either, and I admit that I am a scientist who programs when called upon. I'm not really the one to support something like this. If I am successful, though, I would be pleased to relay my findings to someone who might.
The other Frank
On Fri, 2004-03-05 at 16:53, Frank Heckenbach wrote:
Frank Jahnke wrote:
Could anyone share with me what the status of gpc is on FreeBSD? For what it's worth, I'm running FreeBSD 5.2.1 with gcc 3.3.3.
There have been a few small problems which should have been fixed in the last alpha (20030830). I've tested on netbsd last year. Did you try building it yourself? If there are problems, you can report them here and we'll try to fix them. Otherwise, someone "just" needs to make a FreeBSD port out of it. I don't know how this works exactly (and I won't be able to help much there since I'm busy enough already), but I suppose if the manual build procedure works, it shouldn't be difficult.
Frank
Frank Jahnke wrote:
I've not tried the manual gpc installation yet -- I thought it prudent first to inquire as I become mare familiar with how to do this.
A few questions have come up:
Has anyone tried to install gpc with gcc 3.3.3? I note that the latest alpha release uses 3.3.2, and that usually these dot releases are (minor) bug fixes. Would there be any expected issues using 3.3.3? I would like to maintain compatibility with the C and Fortran compilers I'm using, and interlinkability is a MAJOR advantage.
The major known issue with 3.3.x are system-dependent conditionals. I don't know how serious this issue is under FreeBSD (not very much under Linux, quite serious under Dos/Windows targets). There's a work-around, but to be sure, you might want to use 3.2.x instead (which also seems to behave mostly the same for our purposes as 3.3.x). I suppose all 3.x versions are generally interlinkable (independent of language).
Russell Whitaker, myself and possibly others have tried with 3.3.3, and AFAWCT it's as good (or bad, see above) with GPC as 3.3.2.
Is the latest alpha release reasonably stable, at least for straightforward numerical code? I'm not really a compiler debugger...
You can find the known bug list on the web site. Generally I'd think it's stable enough.
Does the manual install work with any of the FreeBSD tools? I understand that GNU Pascal would use GNU tools, but FreeBSD has a complete complement of these (yacc, awk and nawk, sed, and so forth). Which of the FreeBSD tools (if any) should I be able to use? My hesitation is that any new tool (gawk, for example) really should be tested before it is relied upon, and the more new tools that are installed, the greater the burden becomes. The FreeBSD tools I have used enough to have confidence in (and they are supported).
A plain installation should only require GNU make (possibly GNU sed, but only for peripheral things like docdemos). The parser requires GNU bison, but the bison generated files are included in the full (not minimal) GPC source distribution, so you shouldn't need it then.
Frank
On Sat, 2004-03-06 at 12:48, Frank Heckenbach wrote:
Frank Jahnke wrote:
I've not tried the manual gpc installation yet -- I thought it prudent first to inquire as I become mare familiar with how to do this.
A few questions have come up:
Has anyone tried to install gpc with gcc 3.3.3? I note that the latest alpha release uses 3.3.2, and that usually these dot releases are (minor) bug fixes. Would there be any expected issues using 3.3.3? I would like to maintain compatibility with the C and Fortran compilers I'm using, and interlinkability is a MAJOR advantage.
The major known issue with 3.3.x are system-dependent conditionals.
Is this an issue with gcc or with gpc? I have had some ports break (for example, the plotting package Grace) with gcc 3.3.3 that worked fine with 2.95, for example. All cases have been with testing for system-dependent conditionals. And by system-dependent conditionals, I'm assuming that this is testing for not-a-number, infinity, and the like. Is that correct?
I don't know how serious this issue is under FreeBSD (not very much under Linux, quite serious under Dos/Windows targets). There's a work-around, but to be sure, you might want to use 3.2.x instead (which also seems to behave mostly the same for our purposes as 3.3.x). I suppose all 3.x versions are generally interlinkable (independent of language).
Russell Whitaker, myself and possibly others have tried with 3.3.3, and AFAWCT it's as good (or bad, see above) with GPC as 3.3.2.
My guess is that FreeBSD is more like Linux than DOS for this issue. I may just give it a shot with what I have, and see how it turns out.
Is the latest alpha release reasonably stable, at least for straightforward numerical code? I'm not really a compiler debugger...
You can find the known bug list on the web site. Generally I'd think it's stable enough.
I will check out the bug list. thanks for calling it to my attention.
Does the manual install work with any of the FreeBSD tools? I understand that GNU Pascal would use GNU tools, but FreeBSD has a complete complement of these (yacc, awk and nawk, sed, and so forth). Which of the FreeBSD tools (if any) should I be able to use? My hesitation is that any new tool (gawk, for example) really should be tested before it is relied upon, and the more new tools that are installed, the greater the burden becomes. The FreeBSD tools I have used enough to have confidence in (and they are supported).
A plain installation should only require GNU make (possibly GNU sed, but only for peripheral things like docdemos). The parser requires GNU bison, but the bison generated files are included in the full (not minimal) GPC source distribution, so you shouldn't need it then.
That is good news. I have gmake; as long as documentation is available in other forms (for example, ps or pdf) then I would be good to go.
Frank
the other Frank
Frank Jahnke wrote:
The major known issue with 3.3.x are system-dependent conditionals.
Is this an issue with gcc or with gpc?
GPC. (The internals changed in GCC, and GPC will have to adjust. Since this seems to mean an integrated preprocessor, this won't be a small fix, and might take some time. There's only a quick work-around for now, but as I said, unless there's a good reason to use gcc-3.3.x, it might be better to avoid it with GPC for now.)
I have had some ports break (for example, the plotting package Grace) with gcc 3.3.3 that worked fine with 2.95, for example. All cases have been with testing for system-dependent conditionals. And by system-dependent conditionals, I'm assuming that this is testing for not-a-number, infinity, and the like. Is that correct?
No, what I mean are simply things like `{$ifdef linux}' etc.
I don't know how serious this issue is under FreeBSD (not very much under Linux, quite serious under Dos/Windows targets). There's a work-around, but to be sure, you might want to use 3.2.x instead (which also seems to behave mostly the same for our purposes as 3.3.x). I suppose all 3.x versions are generally interlinkable (independent of language).
Russell Whitaker, myself and possibly others have tried with 3.3.3, and AFAWCT it's as good (or bad, see above) with GPC as 3.3.2.
My guess is that FreeBSD is more like Linux than DOS for this issue. I may just give it a shot with what I have, and see how it turns out.
I also suppose so, only guessing of course.
That is good news. I have gmake; as long as documentation is available in other forms (for example, ps or pdf) then I would be good to go.
These formats are there on the homepage (beside HTML, of course). The info format is included with the non-minimal source distributions. Building any of them yourself requires GNU texinfo (and perhaps other tools, such as GNU awk and bash).
Frank
On Sun, 2004-03-07 at 12:09, Frank Heckenbach wrote:
Frank Jahnke wrote:
The major known issue with 3.3.x are system-dependent conditionals.
Is this an issue with gcc or with gpc?
GPC. (The internals changed in GCC, and GPC will have to adjust. Since this seems to mean an integrated preprocessor, this won't be a small fix, and might take some time. There's only a quick work-around for now, but as I said, unless there's a good reason to use gcc-3.3.x, it might be better to avoid it with GPC for now.)
OK. 3.2.3_1 is in the FreeBSD ports tree (and nine others of various vintages). Let me try that one.
This has no effect on linking the different compilers? That is counterintuitive...
I have had some ports break (for example, the plotting package Grace) with gcc 3.3.3 that worked fine with 2.95, for example. All cases have been with testing for system-dependent conditionals. And by system-dependent conditionals, I'm assuming that this is testing for not-a-number, infinity, and the like. Is that correct?
No, what I mean are simply things like `{$ifdef linux}' etc.
Understood. Not an issue for the codes I want to use. I wrote these many, many years ago, and are simple optimization and finite difference and element codes for problems that are now again of interest. Rather than translate them to C, I thought it easier to get the Pascal compiler going. Yes, I tried p2c, but these are written in Berkeley Pascal, and hence non-standard enough that p2c choked.
I expect that there are a number of these conditionals in the makefile for the compiler, though.
I don't know how serious this issue is under FreeBSD (not very much under Linux, quite serious under Dos/Windows targets). There's a work-around, but to be sure, you might want to use 3.2.x instead (which also seems to behave mostly the same for our purposes as 3.3.x). I suppose all 3.x versions are generally interlinkable (independent of language).
Russell Whitaker, myself and possibly others have tried with 3.3.3, and AFAWCT it's as good (or bad, see above) with GPC as 3.3.2.
My guess is that FreeBSD is more like Linux than DOS for this issue. I may just give it a shot with what I have, and see how it turns out.
I also suppose so, only guessing of course.
That is good news. I have gmake; as long as documentation is available in other forms (for example, ps or pdf) then I would be good to go.
These formats are there on the homepage (beside HTML, of course). The info format is included with the non-minimal source distributions. Building any of them yourself requires GNU texinfo (and perhaps other tools, such as GNU awk and bash).
With all due respect, I find that info pages are not that useful. The man page -- yes. More information necessary? I go to paper manual.
Frank
the other Frank
Frank Jahnke wrote:
GPC. (The internals changed in GCC, and GPC will have to adjust. Since this seems to mean an integrated preprocessor, this won't be a small fix, and might take some time. There's only a quick work-around for now, but as I said, unless there's a good reason to use gcc-3.3.x, it might be better to avoid it with GPC for now.)
OK. 3.2.3_1 is in the FreeBSD ports tree (and nine others of various vintages). Let me try that one.
This has no effect on linking the different compilers? That is counterintuitive...
I'm not sure I understand what you mean. Do you mean that different GCC versions *need* to be imcompatible? ;-) Anyway, I have not much experience under FreeBSD. On Linux, DJGPP and Solaris I haven't had such problems even with widerly varying versions (we once did, some years ago, under Solaris, gcc-2.8.x for gpc, gcc-2.95.x for g++ and some other version, perhaps even non-GNU C compiler, for C libraries used by both the Pascal and C++ parts and, perhaps somewhat surprisingly, it just worked) ...
Understood. Not an issue for the codes I want to use. I wrote these many, many years ago, and are simple optimization and finite difference and element codes for problems that are now again of interest. Rather than translate them to C, I thought it easier to get the Pascal compiler going. Yes, I tried p2c, but these are written in Berkeley Pascal, and hence non-standard enough that p2c choked.
If there are problems, they're most likely to show in system headers, which are used by the RTS.
That is good news. I have gmake; as long as documentation is available in other forms (for example, ps or pdf) then I would be good to go.
These formats are there on the homepage (beside HTML, of course). The info format is included with the non-minimal source distributions. Building any of them yourself requires GNU texinfo (and perhaps other tools, such as GNU awk and bash).
With all due respect, I find that info pages are not that useful. The man page -- yes. More information necessary? I go to paper manual.
To each their own. I find info files easier to use (given a good reader, of course; the default GNU info reader is quite awkward IMHO). But that's why I'm glad that we can build the different formats easily.
Frank