POPLOG ON OSX http://www.cs.bham.ac.uk/research/poplog/osx/ CONTENTS -- NEWS -- -- 24 Jan 2007: Running Poplog/Pop-11 remotely from OSX -- -- 22 Mar 2006: Message from Brent Fulgham -- INTRODUCTION: A WORKING POPLOG WITH X11 FACILITIES -- COMPLETING THE PORT -- CURRENT STATUS -- NOTE FOR EXPERTS -- INSTALLING AND USING OSX POPLOG -- NOTE FROM JULIO ACOSTA -- NEWS ---- -- -- 24 Jan 2007: Running Poplog/Pop-11 remotely from OSX Getting the OSX poplog to work on a Mac running OSX will require some expertise, for reasons explained below. If your Mac is on network that gives you fast access to a linux machine running linux poplog, the following information provided by Alex Speller may be of use. He wrote, that after failing to get OSX poplog to work with XVed on his machine: when I had to do a summer project using Pop11, I found these instructions that enabled me to remotely use xved using the X11 windowing system. http://developer.apple.com/opensource/tools/runningx11.html - particularly the section entitled "X11 Forwarding" and http://developer.apple.com/qa/qa2004/qa1383.html This solution was perfectly acceptable, if a little slow (work must be saved regularly - if your connection drops you lose what you've typed since you last saved!). Of course it requires you to have a remote system with pop11 configured on that you are authorised to access, e.g. the School's servers. Regarding losing work it is possible to use the ved_autosave facility. In your vedinit.p file in the directory $poplib you can do ;;; load the library when you start up Ved or XVed uses ved_autosave; ;;; set active variable to save every 3 minutes 3 -> vedautosave_minutes; ;;; may be changed in Xved using ENTER autosave For more information, in Ved do ENTER help ved_autosave The help file is also available here: http://www.cs.bham.ac.uk/research/projects/poplog/doc/pophelp/ved_autosave -- -- 22 Mar 2006: Message from Brent Fulgham --------------------------------------- Brent has done some testing and is working on re-packaging the OSX port to be consistent with the linux poplog V15.6 port. See this file in this directory http://www.cs.bham.ac.uk/research/poplog/osx/comments-by-brent-fulgham.txt -- INTRODUCTION: A WORKING POPLOG WITH X11 FACILITIES -------------------------------------------------- 16 May 2005 ----------- In June 2004 it was announced that a project was likely to start to port Poplog to OSX on on Apple MAC. For details of the announcement and a suggested porting strategy see http://www.cs.bham.ac.uk/research/poplog/osx-poplog/ The project started some time later. Those involved were seriously handicapped by lack of experience of Poplog and the unavailability of helpers who had experience of Poplog and were also Mac Users. NOTE added 9th June A further cause of difficulty seems to have been bugs in the AIX+PPC port of poplog, which, it was originally hoped would provide a substantial amount of the code for the OSX port. I was assured by ex-members of ISL that AIX poplog had run, but it is possible that the sources I obtained from Sussex were not the final AIX oplog sources. By the time the project ended in May 2005 a working version of poplog for OSX had been produced. This includes: Ved, Pop11, Prolog, Common Lisp and Poplog ML. At this stage the X11 facilities are not working (for unknown reasons). I wrote in an earlier version of this file it is not clear whether the socket mechanisms, or dynamic linking of external programs (e.g. C) work. However, Philippe Roy, who managed the port, has kindly provided the following correction, with welcome information: Sockets do work in this version. Although the newsserver example that was documented to try did not (there is a difference between OS X and Linux in how it is handled that derives from etc/services file), we had some http communications work without a problem. The reason why sockets did not work at first was because sockets are implemented in such a way that it is loaded through dynamic linking. Consequently, dynamic linking also works without a problem in this version also. -- COMPLETING THE PORT ------------------- Help is needed from Poplog experts who also have Apple Mac OS X expertise who may be able to help with completion of the port. Anyone willing should ask for help and advice via either the comp.lang.pop news group or the pop-forum AT cs.bham.ac.uk mailing list. There is also a separate mailing list for poplog developers. To join that email A.Sloman@cs.bham.ac.uk See also http://www.cs.bham.ac.uk/research/poplog/openpoplog.html -- CURRENT STATUS -------------- The final version of the ported system was made available here on 16th May 2005 http://cst.infocol.net/poplog_port_osx/poplog_osx.tgz This is a 50.7Mb file. Don't fetch it. It has been copied to http://www.cs.bham.ac.uk/research/poplog/osx/old/poplog_osx-may-16.tgz DON'T FETCH THIS. I untarred that and found quite a lot of saved images and libraries that had been saved from earlier versions, so I removed them and rebuilt the tar file here http://www.cs.bham.ac.uk/research/poplog/osx/poplog_osx-21-may-2005.tgz 49528833bytes May 21 00:48 poplog/osx/poplog_osx-21-may-2005.tgz FETCH THAT ONE -- NOTE FOR EXPERTS ---------------- The reduced tar file is still larger than the current 18Mbyte linux poplog distribution 9Version 15.6) described here: http://www.cs.bham.ac.uk/research/poplog/v15.6/AREADME.txt This is in part because the OSX file includes pre-built saved images, and also all the .a, .o. and .w files produced by 'pgcomp' in these subdirectories pop/src/ pop/ved/src pop/x/src As far as I can tell, the archives in the pop/obj subdirectory (about 7mbytes) are all out of date, but I left them in case someone needs them. The link command in pop/pop/poplink_cmnd does not have the usual format. It explicitly links all the .o files in the source directories, instead of using the usual file derived from the pop/obj archives. I changed that script to remove all the absolute path names, which made it unusable. However, I don't know if is usable as I am not a mac user. See the note below from Julia Acosta. -- INSTALLING AND USING OSX POPLOG ------------------------------- If you untar the tar file on a Mac, then it will create a directory poplog_osx/ containing these subdirectories poplog_osx/local/ Poplog extension libraries as they were in July 2004 (Not much has changed) poplog_osx/v15.53e/ The main poplog directory To use poplog give the environment variable usepop the full path name last directory as its value, e.g. in bash: usepop=......poplog/osx/v15.5e export usepop in tcsh setenv usepop ......poplog/osx/v15.5e Then do one of these in bash: . $usepop/pop/com/poplog.sh in tcsh source $usepop/pop/com/poplog rehash After that you should be able to run pop11, ved, prolog, clisp or pml At present you cannot use any of the X facilities. As far as I know they have simply not been linked in. I don't know if they would work if the system were re-linked including X. I hope someone finds this useful. Better still, I hope someone who knows pop11 and OSX is willing to help with the task of bringing OSX poplog into a state in which it uses the new directory structure of v15.6 Getting there from a working poplog will not be difficult if all the core poplog facilities in OSX poplog, including popc/pgcomp already work. -- NOTE FROM JULIO ACOSTA ---------------------- The following was posted to the poplog-dev email list: > Subject: poplog osx install > Date: Wed, 18 May 2005 14:38:56 +0000 > > Instructions for installing poplog on OS X > > You can untar poplog_osx file in any desired path, the only important thing > is to setup the environment variables. > For example you could untar the file to /usr/local/poplog and define usepop > as: > > /usr/local/poplog/poplog_osx/v15.53e > > The script named ejecutar in $popsrc was used to rebuild newpop11 image with > the assembler files taken from pc+Linux cross compile to OSX. > > [I DID NOT FIND THIS SCRIPT. Aaron] > > After you untar and set the environment variables you can run script rebuild > in $popsys which follows all the steps mentioned in rebuilding corepop. > > After that you could run newpop11, but it fails at several parts, it can't > load xved, also can't make indexes. It would be better try to install it by > hand, the system builds the three images for pml, clisp and prolog. > $popcom/mkclisp works fine but sometimes it stares in the middle of > execution and needs to be killed (we haven't found a reason for this). > > Pglink and pgcomp work, newpop fails when tries to make indexes, I'm not > sure about pglibr > > Another thing to be aware of is that external symbols are called with > underscore added at the beginning, for example: > > When you compile unix sockets with lib unix_sockets command several > undefined symbols where shown as a mishap “cant find value for external > symbol _getservbyname” wich we could solve by defining _getservbyname in > c_core.c and returning the real system call getservbyname caused by OSX > assembler. > > Thanks a lot for your help and support ======================== Aaron Sloman http://www.cs.bham.ac.uk/~axs/ 9 Jun 2005