[mercury-users] Re: Welcome to mercury-users
Vic Bancroft
bancroft at zvolve.net
Wed Oct 10 01:28:28 AEST 2001
On Mon, Oct 08, 2001 at 10:53:18AM +1000, Fergus Henderson wrote:
> On 03-Oct-2001, Vic Bancroft <bancroft at zvolve.net> wrote:
> > While attempting to build mercury under a recent vintage AIX 4.3.3, I
> > made the following changes to scripts/rs6000_hack :
>
> Did you follow the earlier steps listed in README.AIX first?
Yes, I went through the install process several ways. From a compile
perspective, I had the most luck by just adding the two lines to
Mmake.params, "EXTRA_CFLAGS=-mminimal-toc" and "RM_C=:" then doing
configure and make. I will attach the configure and make logs in a
seperate email (as not to spam the list). The last bit of the
make_install.log are as follows :
gmake[1]: Entering directory `/usr/local/src/mercury-compiler-0.10.1/library'
MERCURY_INT_DIR=. MERCURY_ALL_C_INCL_DIRS=" -I../trace -I../runtime -I../boehm_gc -I../boehm_gc/include " mmc --generate-dependencies --transitive-intermodule-optimization --grade asm_fast --no-infer-all --halt-at-warn library
../scripts/mmc[40]: 27348 Illegal instruction(coredump)
gmake[1]: *** [library.depend] Illegal instruction (core dumped)
gmake[1]: Leaving directory `/usr/local/src/mercury-compiler-0.10.1/library'
Cleaning up from apparent failed install in `./boehm_gc'...
Done.
Cleaning up from apparent failed install in `./browser'...
Done.
Cleaning up from apparent failed install in `./library'...
Done.
Cleaning up from apparent failed install in `./runtime'...
Done.
Cleaning up from apparent failed install in `./trace'...
Done.
gmake: *** [install_grades] Error 1
> In particular, did you go through the normal install process
> and get an error message from the assembler?
> (i.e. did you confirm that the fixed limits that were present in
> earlier versions of AIX are still a problem?)
The table of contents size is still relatively small compared to the
Solaris platform (where I do have mercury running). Without the extra
c flags of -mminimal-toc in Mmake.param, the compiler fails with,
ld: 0711-781 ERROR: TOC overflow. TOC size: 507292 Maximum size: 65536
collect2: ld returned 12 exit status
make[2]: *** [mercury_compile] Error 1
make[2]: Leaving directory `/usr/local/src/mercury-compiler-0.10.1/compiler'
> > What else might I need to add to rs6000_hack ???
>
> rs6000_hack was, as the name suggests, always a bit of a hack.
Yea, I tried it in an attempt for a quick fix.
> Although it would no doubt be possible to get it working again,
> there's now another approach possible which is likely to cause less
> maintenance difficulty in the future: use the `hlc.gc' grade.
Okay, I am willing to experiment a bit. We have migrated some of our
c/c++ Makefiles, when in AIX, to use the compiler from IBM, though gcc
still gets a lot of use.
> This grade results in C code which is a lot more similar to the kind of
> C code that C programmers write, which is hence much less likely to
> exceed fixed limits in the C compiler and/or OS.
> I think this would be a better approach.
Sounds feasible to one who is just learning the mercury system.
> To get that to work, you'd need to generate hlc.gc versions of the C
> files for the Mercury compiler sources, e.g. by cross-compiling
> them on a different system.
I do have mercury compiling executable files under Solaris and could
set up a second instance of the source tree for cross compiles.
[bancroft at exper:/usr/local/src/mercury-compiler-0.10.1/samples]$ ./hello
Hello, world
Having just started reading in compiler/notes, you may need to let me
know what switches to flip. Does this hlc.gc replace the LLDS or MDLS
c code generators ?
> That might take a bit of fiddling about to get it all to work, so it
> would probably be easiest if we just ship a version of our source
> distribution that includes the hlc.gc versions of the generated C
> files. I'll be happy to set things up to do that sometime later
> this week.
At your convenience, I am herding my last iteration of code through
build and testing, so my schedule is flexible.
> (This hlc.gc version of the source distribution might also be
> helpful for those porting to MacOS or other systems.)
Heheh, mebbe I can put in a request for a nifty iBook ! It would be a
lot easier to carry around than this clunky Ultra10.
more,
l8r,
--
-------------------------------------------------------------------
Victor Bancroft, Principal Engineer, Zvolve Systems [v]770.551.4505
1050 Crown Pointe Pkwy, Suite 300, Atlanta GA 30338 [f]770.551.4509
Fellow, Artificial Intelligence Center [v]706.542-0358
Athens, Georgia 30602, U.S.A http://ai.uga.edu/~bancroft
--------------------------------------------------------------------------
mercury-users mailing list
post: mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe: Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------
More information about the users
mailing list