Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.misc > #2108 > unrolled thread
| Started by | Nils M Holm <news2009@t3x.org> |
|---|---|
| First post | 2014-05-01 13:41 +0000 |
| Last post | 2014-05-30 04:28 -0400 |
| Articles | 20 on this page of 55 — 7 participants |
Back to article view | Back to comp.lang.misc
Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-01 13:41 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-01 17:08 -0400
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-01 17:15 -0400
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-01 18:14 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-02 06:23 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-02 06:13 -0400
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-02 06:38 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-02 18:23 +0000
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-02 18:42 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-02 21:02 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 08:00 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-03 08:33 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 13:40 +0000
Re: Testers wanted! "BartC" <bc@freeuk.com> - 2014-05-02 22:02 +0100
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 08:11 +0000
Re: Testers wanted! "BartC" <bc@freeuk.com> - 2014-05-03 10:22 +0100
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 10:03 +0000
Re: Testers wanted! "BartC" <bc@freeuk.com> - 2014-05-03 11:02 +0100
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 10:58 +0000
Re: Testers wanted! "BartC" <bc@freeuk.com> - 2014-05-03 12:44 +0100
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 13:42 +0000
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 08:21 +0000
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 11:03 +0000
Re: Testers wanted! Luuk <luuk@invalid.lan> - 2014-05-03 12:33 +0200
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 10:59 +0000
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 11:02 +0000
Re: Testers wanted! Luuk <luuk@invalid.lan> - 2014-05-03 13:12 +0200
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 11:18 +0000
Re: Testers wanted! Luuk <luuk@invalid.lan> - 2014-05-03 16:14 +0200
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-03 14:28 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-04 21:55 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-05 07:07 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-05 04:13 -0400
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-05 04:18 -0400
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-05 06:52 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-07 14:49 +0000
Re: Testers wanted! "James Harris" <james.harris.1@gmail.com> - 2014-05-07 20:50 +0100
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-08 08:37 +0000
Re: Testers wanted! "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> - 2014-05-08 10:50 +0200
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-08 08:55 +0000
Re: Testers wanted! "James Harris" <james.harris.1@gmail.com> - 2014-05-08 10:21 +0100
Re: Testers wanted! George Neuner <gneuner2@comcast.net> - 2014-05-08 13:43 -0400
Re: Testers wanted! Luuk <luuk@invalid.lan> - 2014-05-05 20:29 +0200
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-05 19:09 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-12 07:06 +0000
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-12 16:18 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-12 20:00 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-13 14:24 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-13 17:04 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-14 16:50 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-14 19:04 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-16 09:39 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-16 17:33 -0400
Re: Testers wanted! Nils M Holm <news2009@t3x.org> - 2014-05-17 20:25 +0000
Re: Testers wanted! "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-30 04:28 -0400
Page 1 of 3 [1] 2 3 Next page →
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-01 13:41 +0000 |
| Subject | Testers wanted! |
| Message-ID | <bsf197F4a8fU2@mid.individual.net> |
Hi all! I am currently migrating the individual ports of my SubC compiler from a non-optimizing back-end with left-to-right evaluation to an optimizing back-end with R-to-L evaluation. Needless to say, things *will* go wrong during this process. So what I am looking for is a few people who could invest a couple of minutes by downloading and trying the EXPERIMENTAL SubC version from http://www.t3x.org/subc/index.html I am mostly interested in the results for Linux-386, Linux-x86-64, and Windows-386 (MinGW). (Feel free to try other ports, too, but they are likely to cause some trouble at this point). It's not really that hard and would help me a lot. The basic prodecure is: ./configure # just a harmless script, no autoconf stuff cd src make test make tests and tell me where it went wrong (or that it went through without any problems). Any help would be appreciated! -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-01 17:08 -0400 |
| Message-ID | <op.xe68zt1g6zenlw@localhost> |
| In reply to | #2108 |
On Thu, 01 May 2014 09:41:59 -0400, Nils M Holm <news2009@t3x.org> wrote: > I am currently migrating the individual ports of my SubC compiler > from a non-optimizing back-end with left-to-right evaluation to an > optimizing back-end with R-to-L evaluation. Needless to say, things > *will* go wrong during this process. > > So what I am looking for is a few people who could invest a couple > of minutes by downloading and trying the EXPERIMENTAL SubC version > from > > http://www.t3x.org/subc/index.html > You're wanting the experimental version tested? Or, current? RP
[toc] | [prev] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-01 17:15 -0400 |
| Message-ID | <op.xe69bfyx6zenlw@localhost> |
| In reply to | #2122 |
On Thu, 01 May 2014 17:08:07 -0400, Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > On Thu, 01 May 2014 09:41:59 -0400, Nils M Holm <news2009@t3x.org> wrote: > >> I am currently migrating the individual ports of my SubC compiler >> from a non-optimizing back-end with left-to-right evaluation to an >> optimizing back-end with R-to-L evaluation. Needless to say, things >> *will* go wrong during this process. >> >> So what I am looking for is a few people who could invest a couple >> of minutes by downloading and trying the EXPERIMENTAL SubC version >> from >> >> http://www.t3x.org/subc/index.html >> > > You're wanting the experimental version tested? Or, current? > Sigh, some days ... RP
[toc] | [prev] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-01 18:14 -0400 |
| Message-ID | <op.xe7b2uus6zenlw@localhost> |
| In reply to | #2122 |
On Thu, 01 May 2014 17:08:07 -0400, Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > On Thu, 01 May 2014 09:41:59 -0400, Nils M Holm <news2009@t3x.org> wrote: >> I am currently migrating the individual ports of my SubC compiler >> from a non-optimizing back-end with left-to-right evaluation to an >> optimizing back-end with R-to-L evaluation. Needless to say, things >> *will* go wrong during this process. >> >> So what I am looking for is a few people who could invest a couple >> of minutes by downloading and trying the EXPERIMENTAL SubC version >> from >> >> [link] >> > > You're wanting the experimental version tested? Or, current? > Sorry, about that. Here are some basic results. Let me know if you need something else. This is your build method for Linux 64-bit. x86_64-slackware-linux (Vlocity, 64-bit Vector Linux) gcc 4.5.2 tar -xvf subc-20140501.tgz ./configure cd src make make test diff scc scc1 "Binary files scc and scc1 differ" The filesize is 252545 for both. They all display the help message. There was no errors, warnings, etc. It built cleanly. The files are different though. Do you want me to do something else on Linux? I also tried your DOS build method and attempted to build with DJGPP as on Linux. Your method for MS-DOS v7.10 with DOSLFN and DJGPP v2.03: doslfn gzip -d subc-20140501.tgz tar -xvf subc-20140501.tar some warnings about invalid symlinks there appears to be four of them IIRC, DJGPP v2.03 doesn't support filesystem links sh configure -m 8086 -s DOS EXDEV errors on improper links for: lib\init.c lib\system.c cg.c cg.h sys.h crt0.s limits.h cd src make make.exe *** No rule to make target `sys.h', needed by `cexpr.c'. Stop. That was the end of your DOS build method. This is an attempt to compile it as on Linux but under DJGPP: sh configure Sorry, MS-DOS/i786 is currently not supported. cd src make make.exe *** No rule to make target `sys.h', needed by `cexpr.c'. Stop. for %1 in (*.c) do gcc -Wall -ansi -pedantic -O2 -c %1 defs.h in every .c file complains about not finding cg.h sys.h many errors related to BPW and other capitalized words I might attempt to trick it into thinking it's support in configure. HTH, Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-02 06:23 +0000 |
| Message-ID | <bsgrvcFfuukU1@mid.individual.net> |
| In reply to | #2124 |
Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > Sorry, about that. Here are some basic results. Let me know > if you need something else. Great, thanks a lot! > This is your build method for Linux 64-bit. > x86_64-slackware-linux > (Vlocity, 64-bit Vector Linux) > gcc 4.5.2 > > [...] > "Binary files scc and scc1 differ" I suspect that some linkers place a timestamp or some other changing datum in the executable, making it difficult to triple-test a compiler. Could you strip the binaries and retry the diff/cmp? If it still reports different files, could you send me the binaries? The address in the sig works. > Do you want me to do something else on Linux? You could run "make ptest systest libtest", which would have been the next steps after the triple test. Since the stage-1 compiler compiles the final compiler, it might work. > I also tried your DOS build method and attempted to build > with DJGPP as on Linux. DJGPP on Linux? Did not know that such a thing exists! > Your method for MS-DOS v7.10 with DOSLFN and DJGPP v2.03: Ah, thanks, but the DOS build is a cross-build only at the time being. Maybe, this should be made clear when configuring. > make.exe *** No rule to make target `sys.h', needed by `cexpr.c'. Stop. > > That was the end of your DOS build method. That's as expected. You can ./configure -m 8086 -s DOS on Linux, though, and then run make and then "make exe". That will create compiler binaries (EXE) for DOS. (cd ../s86; make exe) should bring up the rest of the toolchain. You can then make subc-dos.zip and transfer the resulting archive to a DOS machine for further experimentation However, this port is *really* experimental at the moment, and I would like to concentate on the more stabe back-ends first. > This is an attempt to compile it as on Linux but under DJGPP: > > sh configure > Sorry, MS-DOS/i786 is currently not supported. > [...] > I might attempt to trick it into thinking it's support in configure. Since DJGPP is a 32-bit compiler, it would probably be best to do a ./configure -s Linux -m 386. > HTH, It does! -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-02 06:13 -0400 |
| Message-ID | <op.xe79cre86zenlw@localhost> |
| In reply to | #2131 |
On Fri, 02 May 2014 02:23:40 -0400, Nils M Holm <news2009@t3x.org> wrote: > Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: >> [snip] > > Could you strip the binaries and retry the diff/cmp? If it still > reports different files, could you send me the binaries? I don't have email right now. I can pack them up, upload, and provide a link to a file hosting site, if I can still find a free one that works. Are .tgz fine? >> Do you want me to do something else on Linux? > > You could run "make ptest systest libtest", which would have been the > next steps after the triple test. Since the stage-1 compiler compiles > the final compiler, it might work. 'strip' and 'strip -s' still results in different binaries. I tried 'touch', but 'hexdump -C' for both shows they're different too. >> I also tried your DOS build method and attempted to build >> with DJGPP as on Linux. > > DJGPP on Linux? Did not know that such a thing exists! No, I meant attempt to build them the same way as one would for Linux, i.e., not using the DOS port of the source. I.e., like: >> I might attempt to trick it into thinking it's support in configure. > > Since DJGPP is a 32-bit compiler, it would probably be best to do > a ./configure -s Linux -m 386. ... Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-02 06:38 -0400 |
| Message-ID | <op.xe8ai5gh6zenlw@localhost> |
| In reply to | #2139 |
On Fri, 02 May 2014 06:13:29 -0400, Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > On Fri, 02 May 2014 02:23:40 -0400, Nils M Holm <news2009@t3x.org> wrote: >> Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: >>> [snip] >> >> Could you strip the binaries and retry the diff/cmp? If it still >> reports different files, could you send me the binaries? > > I don't have email right now. I can pack them up, upload, and > provide a link to a file hosting site, if I can still find a > free one that works. Are .tgz fine? > nils.tgz with scc and scc1 on filedropper: http://www.filedropper.com/nils click big "Download This File" button enter Captcha tar -xvf nils.tgz I did one test download. I'm not sure how many they allow. Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-02 18:23 +0000 |
| Message-ID | <bsi644Fp4qpU2@mid.individual.net> |
| In reply to | #2139 |
Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > I don't have email right now. I can pack them up, upload, and > provide a link to a file hosting site, if I can still find a > free one that works. Are .tgz fine? Worked fine, thank you! > > You could run "make ptest systest libtest", which would have been the > > next steps after the triple test. Since the stage-1 compiler compiles > > the final compiler, it might work. > > 'strip' and 'strip -s' still results in different binaries. > I tried 'touch', but 'hexdump -C' for both shows they're > different too. I meant a time stamp within the ELF file, touch will not help here. Unfortunately, the files differ in over 40,000 locations and, as far as I can disassemble 386 in my head, it seems to be absolute addresses that are different. Strange that the compiler still works! So here are a few more things that you could do for me, if you are still motivated: :-) make ptest systest libtest and: ./scc0 -S *.c && tar cvfz scc0.tgz *.s && rm *.s ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s and drop the tarballs in the usual place. That would be great! > No, I meant attempt to build them the same way as one would for > Linux, i.e., not using the DOS port of the source. [...] And DJGPP would then generate DOS-EXE output? -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-02 18:42 +0000 |
| Message-ID | <bsi77uFphfkU1@mid.individual.net> |
| In reply to | #2145 |
Nils M Holm <news2009@t3x.org> wrote: > ./scc0 -S *.c && tar cvfz scc0.tgz *.s && rm *.s > ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s Sorry! I meant: > ./scc -S *.c && tar cvfz scc2.tgz *.s && rm *.s > ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-02 21:02 -0400 |
| Message-ID | <op.xe9eip1t6zenlw@localhost> |
| In reply to | #2146 |
On Fri, 02 May 2014 14:42:06 -0400, Nils M Holm <news2009@t3x.org> wrote: > Nils M Holm <news2009@t3x.org> wrote: >> ./scc0 -S *.c && tar cvfz scc0.tgz *.s && rm *.s >> ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s > There is a difference in opt.s, scan.s, sym.s, misc.s, prep.s, and tree.s between scc0 and scc1. > Sorry! I meant: > >> ./scc -S *.c && tar cvfz scc2.tgz *.s && rm *.s >> ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s > Are you sure? There is no difference between the assembly for the .s files between scc and scc1. I'll still send them, if you want them, and/or the others. Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-03 08:00 +0000 |
| Message-ID | <bsjm00F3vjcU1@mid.individual.net> |
| In reply to | #2148 |
Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > On Fri, 02 May 2014 14:42:06 -0400, Nils M Holm <news2009@t3x.org> wrote: > > Sorry! I meant: > > > >> ./scc -S *.c && tar cvfz scc2.tgz *.s && rm *.s > >> ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s > > > > Are you sure? There is no difference between the > assembly for the .s files between scc and scc1. Yes, I'm sure! And it is a good thing that there are no differences! It means that the assembler/linker does something strange on Linux and the compiler actually passes the triple test. If it also passes "make ptest systest libtest", I'll promote it to "stable". Maybe I should really run the diffs on the assembly output in order to perform the triple test. Any thoughts on that? > I'll still send them, if you want them, and/or the > others. Not necessary! Thanks! -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "Rod Pemberton" <dont_use_email@xnothavet.cqm> |
|---|---|
| Date | 2014-05-03 08:33 -0400 |
| Message-ID | <op.xfaah2fp6zenlw@localhost> |
| In reply to | #2151 |
On Sat, 03 May 2014 04:00:00 -0400, Nils M Holm <news2009@t3x.org> wrote: > Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: >> On Fri, 02 May 2014 14:42:06 -0400, Nils M Holm <news2009@t3x.org> >> wrote: >> > Sorry! I meant: >> > >> >> ./scc -S *.c && tar cvfz scc2.tgz *.s && rm *.s >> >> ./scc1 -S *.c && tar cvfz scc1.tgz *.s && rm *.s >> > >> >> Are you sure? There is no difference between the >> assembly for the .s files between scc and scc1. > > Yes, I'm sure! And it is a good thing that there are no differences! > It means that the assembler/linker does something strange on Linux > and the compiler actually passes the triple test. > ... > If it also passes "make ptest systest libtest", I'll promote it to > "stable". > Hmm... Well, I thought I posted the results for that, but it seems I didn't. That emits one awk line followed by three scc0 lines. Then, it fails: /bin/sh: line 2: 3638 Segmentation fault ./libtest make: *** [libtest] error 139 The scc0 compiler lines are for ptest.c, systest.c, libtest.c. If you didn't notice from the tar, that's running as root. I did attempt to update GLIBC a while ago. I hope I'm not causing this issue. > Maybe I should really run the diffs on the assembly output in order > to perform the triple test. Any thoughts on that? Same info. Your choice. Right? >> I'll still send them, if you want them, and/or the others. > > Not necessary! Thanks! > Ok. So, no files. Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-03 13:40 +0000 |
| Message-ID | <bsk9uaF82kmU1@mid.individual.net> |
| In reply to | #2165 |
Rod Pemberton <dont_use_email@xnothavet.cqm> wrote: > That emits one awk line followed by three scc0 lines. > Then, it fails: > > /bin/sh: line 2: 3638 Segmentation fault ./libtest > make: *** [libtest] error 139 > > The scc0 compiler lines are for ptest.c, systest.c, libtest.c. Not good. Since systest runs ans libtest fails, its almost certainly signal() that's causing the trouble. It seems to get harder and harder to write a working signal() functions in a few lines of assembly these days. (And it already is a wrapper around sigaction() on Linux.) > If you didn't notice from the tar, that's running as root. Any particular reasons for this? > I did attempt to update GLIBC a while ago. I hope I'm not > causing this issue. No, the Linux port does not use GLIBC at all. > > Maybe I should really run the diffs on the assembly output in order > > to perform the triple test. Any thoughts on that? > > Same info. Your choice. Right? I think so, but I'll give it some more thought before switching. -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "BartC" <bc@freeuk.com> |
|---|---|
| Date | 2014-05-02 22:02 +0100 |
| Message-ID | <%JT8v.244136$te5.217047@fx13.am4> |
| In reply to | #2108 |
"Nils M Holm" <news2009@t3x.org> wrote in message
news:bsf197F4a8fU2@mid.individual.net...
> http://www.t3x.org/subc/index.html
> ./configure # just a harmless script, no autoconf stuff
> cd src
> make test
> make tests
>
> and tell me where it went wrong (or that it went through without any
> problems).
I've had a go at building this, although not with any great hopes, as my
experience of building open source projects is good. It's usually 'make'
which is the stumbling block, as it was here.
So any problems are likely to be at my end through doing something wrong.
(1) This is on Windows and I wanted to use Mingw gcc.
(2) Uploaded the experimental tgz file. (Don't like these as I'm on Windows
without native support.). And ended up with the extracted files in C:\subc
(3) Inside C:\subc\src, I typed 'make', giving a bunch of 20 errors and 9
warnings. But it seemed this 'make' invokes the version belonging to lcc
(presumably lcc-win32). The mingw make appears to be called
mingw32-make.exe.
(4) Instead using C:\mingw\bin\make (renaming it to 'make.exe'), it runs a
program cc which doesn't like the -o or /o switch (I forget which). It turns
out that cc.exe is invoking the PellesC compiler!
(5) I changed MakeFile to define a 'CC' symbol pointing to the right gcc
program (don't know make so this is guesswork. BTW these files use LF
line-endings which I had to change to CRLF to work with my editors)
(6) Finally running gcc, it generates loads of errors. Choosing one file at
random, gen.c, and compiling it manually, it objects to the file cg.h,
included by defs.h, which is included by gen.c
But cg.h contains just the line:
targets/cg/cg386.h
which is not standard C. It didn't appear that cg.h is a file that is
supposed to be translated (by an utility invoked in the makefile), so
perhaps it's something that subc understands. The file sys.h is similar.
I tried changing cg.h and sys.h to turn those lines into proper include
statements:
#include "targets/cg/cg386.h"
etc.
This threw up a similar problem in cg.c. But then:
C:\subc\src>\mingw\bin\make
\mingw\bin\gcc -o scc0 cexpr.c cg.c decl.c error.c expr.c gen.c main.c
misc.c opt.c prep.c scan.c st
mt.c sym.c tree.c
In file included from cg.c:1:0:
targets/cg/cg386.c:6:18: fatal error: defs.h: No such file or directory
#include "defs.h"
^
compilation terminated.
makefile:50: recipe for target 'scc0' failed
make: *** [scc0] Error 1
The file defs.h exists, but maybe it can't be accessed from that directory.
Obviously some essential configuration step has been missed out somehow.
Probably, looking back at your post, that ./configure line! (I assumed you
were saying that that configure file contained the following cd src and make
lines.)
Unfortunately 'configure' seems to be some shell script which doesn't work
under Windows. (Maybe, if something called 'cygwin' was installed, which
tries to emulate an Linux-like environment. But Mingw works directly under
Windows.)
--
Bartc
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-03 08:11 +0000 |
| Message-ID | <bsjmltF3vjcU2@mid.individual.net> |
| In reply to | #2147 |
BartC <bc@freeuk.com> wrote: > I've had a go at building this, although not with any great hopes, as my > experience of building open source projects is good. It's usually 'make' > which is the stumbling block, as it was here. OK, Windows is not really supported by the configure/make infrastructure of SubC! There is a (probably outdated) WINBUILD.BAT in the root of the SubC package which used to bootstrap the compiler on Windows. I have not written the batch file and I have probably broken it while trying to adapt it to a new version. I have no Windows box to test it on. If you would like to give it a try, though... :-) > So any problems are likely to be at my end through doing something wrong. > > (1) This is on Windows and I wanted to use Mingw gcc. Should work fine with the winbuild batch file (if it works at all!) > (2) Uploaded the experimental tgz file. (Don't like these as I'm on Windows > without native support.). And ended up with the extracted files in C:\subc I do not understand this, could you explain in different words? What did you expect and what happened instead? > (3) Inside C:\subc\src, I typed 'make', giving a bunch of 20 errors and 9 > warnings. But it seemed this 'make' invokes the version belonging to lcc > (presumably lcc-win32). The mingw make appears to be called > mingw32-make.exe. This was to be expected! > (5) I changed MakeFile to define a 'CC' symbol pointing to the right gcc > program (don't know make so this is guesswork. BTW these files use LF > line-endings which I had to change to CRLF to work with my editors) OK, good to know! I thought all editors nowadays can handle LF. > (6) Finally running gcc, it generates loads of errors. Choosing one file at > random, gen.c, and compiling it manually, it objects to the file cg.h, > included by defs.h, which is included by gen.c > > But cg.h contains just the line: > > targets/cg/cg386.h > > which is not standard C. It's a symlink to targets/cg/cg386.h which extracting the tarball has broken. WINBUILD.BAT should fix those. > Obviously some essential configuration step has been missed out somehow. > Probably, looking back at your post, that ./configure line! (I assumed you > were saying that that configure file contained the following cd src and make > lines.) Ah, no. ./configure links files like cg.c, sys.h, etc into place. On Windows, this should be done by the batch file. > Unfortunately 'configure' seems to be some shell script which doesn't work > under Windows. (Maybe, if something called 'cygwin' was installed, which > tries to emulate an Linux-like environment. But Mingw works directly under > Windows.) Thanks for your detailed report! Will definitely add a note for Windows users. And: sorry about the inconvenience. I really do not have the slightest clue regarding Windows. Never used it in my entire life. -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "BartC" <bc@freeuk.com> |
|---|---|
| Date | 2014-05-03 10:22 +0100 |
| Message-ID | <7A29v.139945$_m3.33288@fx02.am4> |
| In reply to | #2152 |
"Nils M Holm" <news2009@t3x.org> wrote in message news:bsjmltF3vjcU2@mid.individual.net... > BartC <bc@freeuk.com> wrote: >> I've had a go at building this, although not with any great hopes, as my >> experience of building open source projects is good. It's usually 'make' >> which is the stumbling block, as it was here. > > OK, Windows is not really supported by the configure/make infrastructure > of SubC! Oh, OK! You mentioned 'Windows-386' and I thought it was. > There is a (probably outdated) WINBUILD.BAT in the root of the > SubC package which used to bootstrap the compiler on Windows. > If you would like to give it a try, though... :-) I'll have a closer look later, starting with fresh sources. (I've quickly tried it now and there are a few problems, but they need looking at in more detail.) But if this program is in fairly portable C, then it should be possible to compile somehow; problems with the automation of that is a separate matter. >> (2) Uploaded the experimental tgz file. (Don't like these as I'm on >> Windows >> without native support.). And ended up with the extracted files in >> C:\subc > > I do not understand this, could you explain in different words? What > did you expect and what happened instead? (Formats such as .tgz and .tar.gz are entirely unknown to Windows. External tools are needed such as '7-Zip' are needed, but are awkward to use. Windows distributions tend to use .zip files.) -- Bartc
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-03 10:03 +0000 |
| Message-ID | <bsjt6vF5bvpU1@mid.individual.net> |
| In reply to | #2154 |
BartC <bc@freeuk.com> wrote: > "Nils M Holm" <news2009@t3x.org> wrote in message > news:bsjmltF3vjcU2@mid.individual.net... > > OK, Windows is not really supported by the configure/make infrastructure > > of SubC! > > Oh, OK! You mentioned 'Windows-386' and I thought it was. I thought so, too. I tend to forget that Windows is not Unix. > > There is a (probably outdated) WINBUILD.BAT in the root of the > > SubC package which used to bootstrap the compiler on Windows. > > > If you would like to give it a try, though... :-) > > I'll have a closer look later, starting with fresh sources. (I've quickly > tried it now and there are a few problems, but they need looking at in more > detail.) But if this program is in fairly portable C, then it should be > possible to compile somehow; problems with the automation of that is a > separate matter. The code itself is written in a strict subset of C89, except for the crt0 module, which is in assembly. The crt0 is also the point which most probably will cause trouble, because I have adapted it to the new calling conventions without really knowing what I do. > (Formats such as .tgz and .tar.gz are entirely unknown to Windows. External > tools are needed such as '7-Zip' are needed, but are awkward to use. Windows > distributions tend to use .zip files.) I see. -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "BartC" <bc@freeuk.com> |
|---|---|
| Date | 2014-05-03 11:02 +0100 |
| Message-ID | <ba39v.232699$Tp4.206565@fx11.am4> |
| In reply to | #2154 |
"BartC" <bc@freeuk.com> wrote in message news:7A29v.139945$_m3.33288@fx02.am4... > "Nils M Holm" <news2009@t3x.org> wrote in message > news:bsjmltF3vjcU2@mid.individual.net... >> There is a (probably outdated) WINBUILD.BAT in the root of the >> SubC package which used to bootstrap the compiler on Windows. > >> If you would like to give it a try, though... :-) > > I'll have a closer look later, starting with fresh sources. (I've quickly > tried it now and there are a few problems, but they need looking at in > more > detail.) But if this program is in fairly portable C, then it should be > possible to compile somehow; problems with the automation of that is a > separate matter. WINBUILD.BAT contained odd lines such as setting up a path C:\\dev-cpp\\ (some old compiler I guess). And then it used 'make clean', but I can't find any file called 'clean' anywhere (which uses a command called 'rm' which gives problems). Anyway I decided not to bother with any of that anymore, and just extracted the 14 C modules into another directory, plugged them into my IDE, and here they compiled with no problem! All in a couple of minutes. (I used gcc, and that only gave some warnings for main.c, in link(), about unknown string escapes. This was in a macro SYSLIBC which I believe is something that WINBUILD tries to constuct.) Trying scc (as (I called Subc) to compile C programs, it just needed me to copy the standard headers into ./include. Now scc will generate what looks like .x86 asm code in .s files. I will have a look at what SYSLIBC is supposed to be, but it hasn't had an adverse affect. (Also not sure what the next step is after the .s file is generated; does Subc go any further with that?) -- Bartc
[toc] | [prev] | [next] | [standalone]
| From | Nils M Holm <news2009@t3x.org> |
|---|---|
| Date | 2014-05-03 10:58 +0000 |
| Message-ID | <bsk0ehF621nU1@mid.individual.net> |
| In reply to | #2156 |
BartC <bc@freeuk.com> wrote: > "BartC" <bc@freeuk.com> wrote in message > WINBUILD.BAT contained odd lines such as setting up a path C:\\dev-cpp\\ > (some old compiler I guess). And then it used 'make clean', but I can't find > any file called 'clean' anywhere (which uses a command called 'rm' which > gives problems). DEVCPPPATH is the path to the MinGW C libraries. It is used to construct the SYSLIBC variable, which points to some libraries that C programs seem to require on Windows. > Anyway I decided not to bother with any of that anymore, and just extracted > the 14 C modules into another directory, plugged them into my IDE, and here > they compiled with no problem! All in a couple of minutes. This is good to hear! > Trying scc (as (I called Subc) to compile C programs, it just needed me to > copy the standard headers into ./include. > > Now scc will generate what looks like .x86 asm code in .s files. > > I will have a look at what SYSLIBC is supposed to be, but it hasn't had an > adverse affect. > (Also not sure what the next step is after the .s file is generated; does > Subc go any further with that?) If you did not use WINBUILD.BAT, the build will create a Unix compiler, which will use fork/execve/wait to spawn the assembler and linker (which will not work on Linux). You need to install some Windows-specific files from src/targets in the source tree to get a working Windows compiler. Specifically: copy src\targets\windows-386\crt0-windows-386.s src\lib\crt0.s copy src\targets\windows-386\sys-windows-386.h src\sys.h copy src\targets\lib\init-windows.c src\lib\init.c copy src\targets\lib\system-windows.c src\lib\system.c copy src\targets\include\limits-32.h src\include\limits.h (I hope I did not mistype too many paths.) To link programs, you will also have to create a proper SYSLIBC (system C libraries) define in sys.h. I'm afraid I cannot help here. -- Nils M Holm < n m h @ t 3 x . o r g > www.t3x.org
[toc] | [prev] | [next] | [standalone]
| From | "BartC" <bc@freeuk.com> |
|---|---|
| Date | 2014-05-03 12:44 +0100 |
| Message-ID | <eG49v.293376$AI5.159168@fx32.am4> |
| In reply to | #2158 |
"Nils M Holm" <news2009@t3x.org> wrote in message news:bsk0ehF621nU1@mid.individual.net... > BartC <bc@freeuk.com> wrote: >> (Also not sure what the next step is after the .s file is generated; does >> Subc go any further with that?) > > If you did not use WINBUILD.BAT, the build will create a Unix compiler, > which will use fork/execve/wait to spawn the assembler and linker (which > will not work on Linux). You need to install some Windows-specific files > from src/targets in the source tree to get a working Windows compiler. I tried it with Linux/Ubuntu to get an idea of how it works. This OS is running within Virtual Box under Windows, and I believe runs in x86 32-bit mode (Windows itself is 64-bit). It builds much more smoothly! It managed to compile and run a Hello World program, but there is clearly some gcc influence in there as the output was put in a.out. I will try Mingw's gcc on the .s output under Windows to see what happens. -- Bartc
[toc] | [prev] | [next] | [standalone]
Page 1 of 3 [1] 2 3 Next page →
Back to top | Article view | comp.lang.misc
csiph-web