Donald Winiecki | 25 May 20:53

up-to-date setup instructions for Win32 GCL

Hi,

It's about a year late but included below is the most up-to-date setup directions for Win32 GCL.  This includes setting up and using a CVS client, and building Win32 GCL on a current WinXP, WinVista and Win7.

Next it's the regular docs.

Best,

_don



===============================================
BUILDING NATIVE WIN32 GNU COMMON LISP FROM CVS
===============================================

The preferred build host system for the Mingw32 compiler is MSYS.

I use gcc version 3.3.1 and binutils 2.14.90, but earlier versions
of gcc back to 2.95 are OK provided that you remove the
"-fno-zero-initialized-in-bss" flag in "h/mingw.defs" before running
"configure".

Note that gcc 3.3.3 and gcc 3.4.0 do NOT work; likewise binutils 2.13.90
and 2.15.90.

The working binutils version can be found at:

http://gd.tuwien.ac.at/gnu/mingw/binutils-2.14.90-20030612-1.tar.gz

===============================================
INSTALL AND CONFIGURE TORTOISE CVS
===============================================

Download Tortoise CVS from:  http://www.tortoisecvs.org/

After downloading, install Tortoise CVS and included programs,
accepting default installation directories.

===============================================
DOWNLOAD CVS FOR GCL
===============================================

Choose a directory to which you will download (check out) of the GCL CVS
(I created c:\_cvs).

Enter the directory created and right click.  The context menu will show
`CVS checkout' as a context menu itemu.

Choose the 'CVS checkout' context menu item.  You should be presented with
a dialogue box titled 'TortoiseCVS-Checkout Module'. 

Under the 'Module' tab, enter the following:

For Protocol, enter

     :pserver

For `server', enter

    cvs.savannah.gnu.org    

For `Repository folder', enter

    /sources/gcl

For `User name', enter

     anonymous

On the right side of the dialog box, for `Module', enter

     gcl

Under the 'Revision' tab:

Select the 'Choose branch or tag' radio button

Select the 'Update list...' button

Open the 'Branch or tag name:' drop down list and select the version you want
to build

Under the 'Options' tab:

Select the `Export - for making a software release' radio button

Check the `Use UNIX line ending' box

Choose the 'Enter your own folder name' radio button

In the 'Custom folder name:' field, enter the name of the folder you desire
to be created (for example, 'gcl-2.6.7' to match the version to be built)

Now, click again on `Module' tab. Click on OK.  You should see that
tortoise CVS is checking out GCL from CVS repo.


More information on CVS access is available here

   http://savannah.gnu.org/cvs/?group=gcl


================================================
INSTALLING BUILD TOOLS (MinGW, MSYS)
================================================

----------------------------------------------------------------------------
** INSTALLING ON UP-TO-DATE WINDOWS XP, WINDOWS VISTA AND WINDOWS 7       **
** (Thanks to Dan Raymond for this:                                       **
** http://readlist.com/lists/lists.sourceforge.net/mingw-msys/0/918.html) **
----------------------------------------------------------------------------

BUILD TOOLS

Subject to the above warnings, it is usually a good idea to keep up to
date with Mingw32 and MSYS.  Updates for various parts of these packages
are available on the web site.

(Alternative location for these files is [as of 6 July 08]:
 http://www.mingw.org/download.shtml and download)

Install these files in the same order as indicated below.  Accept the
default locations.

  http://prdownloads.sf.net/mingw/MinGW-3.1.0-1.exe?download

When the following program opens a terminal window and asks permission to
perform postinstall processing, press `n' and `enter' to abort the
postinstall processing (otherwise, an error may occur and Vista will
generate over 100 windows). 

  http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download

  http://prdownloads.sf.net/mingw/msysDTK-1.0.1.exe?download

Open an MSYS window and type the following command (this will allow you to
use the MSYS version of ftp instead of the Windows version of ftp
subsequently):

mv /bin/ftp /bin/ftp.old

Copy the following files to c:\mingw

  http://prdownloads.sf.net/mingw/binutils-2.14.90-20030612-1.tar.gz?download

  http://prdownloads.sf.net/mingw/gcc-core-3.3.1-20030804-1.tar.gz?download

  http://prdownloads.sf.net/mingw/mingw-runtime-3.14.tar.gz?download

  http://prdownloads.sf.net/mingw/w32api-3.11.tar.gz?download

Open an MSYS window and execute the following commands (The first four
command lines below untar the archives and delete them while the last line
sets up the mount point for mingw (you need to do this manually since you
aborted the post install for MSYS).

cd /c/mingw
gzip -d *.gz
find -name '*.tar' -exec tar -xvf {} \;
rm *.tar
echo 'C:/mingw /mingw' > /etc/fstab


When you are done, you should be able to start MSYS and a get the '$' prompt
(customized for your machine name and your username, if active). 

To check the installation, type 'gcc -v' at the prompt.  If all was
installed properly you should see the following.  (If not, something got
missed along the way.  At this point, uninstall msysDTK, MSYS and MinGW
through Windows' control panel and delete the c:\MinGW and c:\msys
directories, reboot and reinstall following the procedure above.)

  gcc version 3.3.1 (mingw special 20030804-1)

===============================================
BUILDING GCL USING MSYS AS THE HOST
===============================================

At the MSYS '$' prompt, change to your GCL source directory (for example):

  cd /c/_cvs/gcl

You are now ready to configure GCL:

If you want to build the CLTL1 variant, type:

  ./configure --prefix="c:/_cvs/gcl" &>c:/_cvs/configure.log

If you want to build the ANSI variant, type:

  ./configure --prefix="c:/_cvs/gcl" --enable-ansi &>c:/_cvs/configure.log

  Change the prefix directory and directory to which the log is output as
  required for your desired final installation paths.

When configure is completed, enter the following command at the MinGW
command line (the MSYS shell):

   make &>c:/_cvs/make.log

On my dual core 2.2GHz machine, the process takes about 10-12 minutes.  The
"saved_gcl.exe" (or "saved_ansi_gcl.exe") should turn up eventually in
the unixport directory (inside the \lib\gcl-x.x.x directory of the final
installation directory). 

You can try it out directly inside the MSYS shell by typing the following at
the MSYS command prompt.


For the CLtL1 version, type the following:

  ./unixport/saved_gcl.exe

For the ANSI version, type the following:

  ./unixport/saved_ansi_gcl.exe

To install, type the following at the MSYS command prompt:

  make install &>c:/_cvs/install.log

- The batch file "gclm.bat" can be used to make a Windows desktop
  shortcut.  (NOTE: I have not been able to make this batch file work [djw])

- BFD fasloading, Stratified Garbage Collection (SGC) readline and GCL-TK
  don't work under Windows.  The configuration options above provide a
  "traditional" GCL executable which will build the current CVS version of
  Maxima.  The BFD option will depend on someone with knowledge of BFD and
  PE-COFF linking fixing some problems with the BFD library - I am slowly
  absorbing the info needed, but we really need input from an expert.  My
  inclination is to stick with custom relocation as BFD is less efficient.

===============================================
INSTALLING GCL INFORMATION ACCESSIBLE FROM GCL INTERPRETER
===============================================

Download "gcl.info.tgz" from ftp://ftp.gnu.org/pub/gnu/gcl/

Make the following directory path and unpack the downloaded file into

C:\usr\local\gnu\info

===============================================
RUNNING GCL
===============================================

You can move the final installation folder (for example, "GCL-2.6.7-ANSI")
anywhere on your hard drive (typically, c:\program files).

Create a shortcut to the executable (either "saved_gcl.exe" or
"saved_ansi_gcl.exe") and assign to it the icon located in the \bin
directory.

You can then move the shortcut to anywhere (the 'Start' menu or your 'Quick
Launch' menu).  Double click the icon to launch GCL.

===============================================
CONFIGURE GCL TO RUN IN INFERIOR MODE UNDER EMACS
===============================================

Follow directions provided by Gordon Novak Jr. at:

http://www.cs.utexas.edu/users/novak/gclwin.html


===============================================
Original setup and configuration directions by Mike Thomas, 15 Jun 2004.

Updates and modifications by Don Winiecki, 1:06 PM 01 Jan 2008, using
details provided by Mike Thomas, Camm Maguire, Gaby Dos Reis, and Gordon
Novak Jr. (http://lists.gnu.org/archive/html/axiom-developer/2003-10/msg00227.html)

Updates for setup on MS-Vista by Don Winiecki, 12:40PM 06 Jul 2008, using
information provided by Dan Raymond.

Updates for setup on up-to-date Windows XP and Windows 7, 1:18PM 21 May 2012.

Updates on details of configure, make and install commands by Don Winiecki,
10:24AM 17 Aug 2010.

_______________________________________________
Gcl-devel mailing list
Gcl-devel <at> gnu.org
https://lists.gnu.org/mailman/listinfo/gcl-devel
Faheem Mitha | 22 Mar 21:54

Compiler does not give error if T clause in case construct is not last one


Hi,

The bugs page at http://savannah.gnu.org/bugs/?group=gcl looks dead, so I'm 
writing to the developer mailing list. If there is a more suitable place to 
report bugs, let me know and I'll send it there.

Consider the following session. I believe this is wrong.

faheem <at> orwell:/usr/bin$ gcl
GCL (GNU Common Lisp)  2.6.7 CLtL1    Jan 20 2012 20:04:53
Source License: LGPL(gcl,gmp), GPL(unexec,bfd,xgcl)
Binary License:  GPL due to GPL'ed components: (XGCL READLINE UNEXEC)
Modifications of this banner must retain notice of a compatible license
Dedicated to the memory of W. Schelter

Use (help) to get some basic information on how to use GCL.
Temporary directory for compiler files set to /tmp/

> (defparameter x 2)

X

> (defun foo (y) (case y (t (print "matches t")) (1 (print "matches 1")) ) 
)

FOO

> (foo x)

"matches t"
"matches t"

See also https://bugs.launchpad.net/sbcl/+bug/959687 for context.

Please CC me on any reply. Thanks.

                                                  Regards, Faheem
Camm Maguire | 27 Jan 15:51
Favicon

Re: ghci on arm

Greetings!

In cvs tag Version_2_6_8pre, the file o/sfaslelf.c has the bulk.
Platform specific headers are selected at configure time and stored in
h/.

Take care,

Ben Gamari <bgamari.foss <at> gmail.com> writes:

> On Wed, 25 Jan 2012 22:12:13 -0500, Camm Maguire <camm <at> maguirefamily.org> wrote:
>> Greetings!  GCL has a working native linker now on armel and armhf.  We
>> have a generic elf relocation file, with machine specific headers
>> implementing only those relocs output by gcc.  I can step you through
>> the code if interested.
>> 
> Where exactly could this code be found? I can't seem to find it in the
> GCL CVS repository.
>
> Cheers,
>
> - Ben
>
>
>
>
>

--

-- 
Camm Maguire			     		    camm <at> maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
Camm Maguire | 23 Jan 15:52
Favicon

Re: maxima build fails using gcl

Greetings!

Karsten Trulsen <karstent <at> math.uio.no> writes:

> Hello,
>
> I followed your advice, and installed the precompiled amd64 Debian
> linux binary from gcl_2.6.7-98_amd64.deb
>> GCL (GNU Common Lisp)  2.6.7 ANSI    Jan 20 2012 22:39:17
> Then I compiled maxima using this precompiled gcl, with exactly the
> same error message as before:
>> ;      - Loading binary file "binary-gcl/compar.o"
>> Loading binary-gcl/compar.o
>> Error in FUNCALL [or a callee]: The assertion !clear_protect_memory(memory) on line 574 of sfaslelf.c
in function fasload failed
>
> I am on Red Hat Enterprise Linux (RHEL) version 6.  The compilation of
> maxima with gcl worked before, but stopped working when RHEL was
> upgraded from version 5 to version 6.
>

OK this is a clear sign of a kernel memory protection or library address
mapping "feature".  In your log, brk is returning without error
indicating that the memory range should be within the .data segment of
the running process.  EACESS makes no sense after this, IMHO.  It might
be useful to fire up gcl and report the contents of /proc/≤pid>/maps,
and perhaps also search your logs (under /var/log) for kernel exception
messages.  Perhaps ask with Red Hat?  The key observation is that
memory allocated with brk cannot be set with execute permissions beyond
a certain range (looks like 0x4000000 and above).

> Best regards,
> Karsten
>
>
> Den 20. jan. 2012 20:50, skrev Camm Maguire:
>> Greetings, and thanks!
>>
>> The relevant bits are:
>>
>> [pid 30971] mprotect(0xf0b000, 22028288, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf0b000, 22028288, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfd8000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfdf000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfcc000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfeb000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf7d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6c000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf75000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf8e000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xffd000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfef000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf8f000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfd6000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfe2000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf40000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf80000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf82000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xffb000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf85000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfe8000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xff6000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf76000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfe5000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xffa000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x100c000, 28671, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf91000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf73000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1006000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1007000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf7d000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x102e000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1016000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1013000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1031000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x101b000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x103c000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1089000, 73727, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1055000, 163839, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x102b000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x103a000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x100c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfe8000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10c7000, 65535, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1025000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1406000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x102d000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x103c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf7c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfd6000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x13e5000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1050000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfe4000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf8c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf8e000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf3b000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf3a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf98000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf93000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6e000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1005000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1015000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1004000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1024000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1054000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xff9000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xff9000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1054000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf40000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1089000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x107f000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x102a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x107e000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x107f000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1002000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xfea000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x107c000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1021000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x100b000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1084000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x101d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x101d000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1082000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf42000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10db000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf7b000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10db000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf40000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf68000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1087000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf3e000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1020000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x101e000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10ec000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10f0000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10fb000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10de000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10e4000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10f3000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1027000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10a3000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x109f000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10ea000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10dd000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1025000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10ff000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10a1000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x109d000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1084000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1101000, 36863, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x116b000, 159743, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1141000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1155000, 28671, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10af000, 65535, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10d6000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10e7000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x115b000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1109000, 110591, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10e4000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1135000, 36863, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1191000, 53247, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11c9000, 61439, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x119d000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1165000, 24575, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11e1000, 98303, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11d7000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1126000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11de000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11ae000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11b7000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11f8000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11c2000, 24575, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x120a000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x125c000, 49151, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1243000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1288000, 61439, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1299000, 61439, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10be000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1267000, 69631, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1230000, 28671, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10bf000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10e1000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10aa000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1284000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1214000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10c3000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1281000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10eb000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1257000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1088000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x109a000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x102a000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x11a7000, 24575, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10a7000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1209000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10f9000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1209000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x12c7000, 57343, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x12b8000, 53247, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x12f8000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x12d5000, 90111, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x13b5000, 159743, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x12f5000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x112f000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1130000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1342000, 65535, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x130d000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10f7000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1130000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1216000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1277000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x13db000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10db000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x10c3000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1240000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x1321000, 49151, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
>> [pid 32129] mprotect(0x474d000, 147455, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EACCES (Permission denied)
>>
>>  From the mprotect manpage:
>>
>>         EACCES The  memory  cannot be given the specified access.  This can happen, for example, if you mmap(2) a
file to which you have read-only
>>                access, then ask mprotect() to mark it PROT_WRITE.
>>
>>
>> My guess is that your kernel has security settings against executing
>> code in certain regions.  SElinux?  Did this work before?  Can you run
>> the precompiled amd64 Debian linux binary?
>>
>> Take care,
>>
>> Karsten Trulsen<karstent <at> math.uio.no>  writes:
>>
>>> Dear Camm Maguire,
>>>
>>> First, I downloaded gcl from cvs after release 2.6.7-97, and built it
>>> successfully on:
>>> Linux vesta.uio.no 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST
>>> 2011 x86_64 GNU/Linux
>>> using:
>>> gcc version 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC)
>>>
>>> Then I ran both configure and make of maxima-5.26.0 using the following:
>>>> echo "configure maxima" 2>&1 | tee -a ../../logfile.maxima
>>>> strace -f ./configure --prefix=$INSTALL
>>>> --with-gcl=$HOME/local/bin/gcl 2>&1 | tee -a ../../logfile.maxima
>>>> echo "make maxima" 2>&1 | tee -a ../../logfile.maxima
>>>> strace -f make 2>&1 | tee -a ../../logfile.maxima
>>>
>>> The logfile can be downloaded from here:
>>> http://folk.uio.no/karstent/logfile.maxima
>>> Its size is 81576181 bytes!
>>>
>>> Best regards,
>>> Karsten
>>>
>>>
>>> On 01/18/2012 07:56 PM, Camm Maguire wrote:
>>>> Greetings!  I cannot reproduce this on a Debian unstable (sid) amd64
>>>> machine, gcc 4.6.2.
>>>>
>>>> The only way this can happen is for mprotect to fail.  I can update the
>>>> error message to give more info, but you can also run the build under
>>>> strace -f and see the mprotect errno setting if this is repeatable.
>>>>
>>>>   From the manpage:
>>>>
>>>> ERRORS
>>>>          EACCES The  memory  cannot be given the specified access.  This can happen, for example, if you mmap(2) a
file to which you have read-only
>>>>                 access, then ask mprotect() to mark it PROT_WRITE.
>>>>
>>>>          EINVAL addr is not a valid pointer, or not a multiple of the system page size.
>>>>
>>>>          ENOMEM Internal kernel structures could not be allocated.
>>>>
>>>>          ENOMEM Addresses in the range [addr, addr+len] are invalid for the address space of the process, or
specify one or more pages that are not
>>>>                 mapped.  (Before kernel 2.4.19, the error EFAULT was incorrectly produced for these cases.)
>>>>
>>>> My guess is ENOMEM.
>>>>
>>>> Please keep me posted.
>>>>
>>>> Take care,
>>>>
>>>> Karsten Trulsen<karstent <at> math.uio.no>   writes:
>>>>
>>>>> Dear Camm Maguire,
>>>>>
>>>>> Attempt to compile maxima-5.26.0 with the latest gcl (downloaded from
>>>>> CVS after release 2.6.7-96) is not successful.  The building of gcl
>>>>> apparently goes well, I reproduce some configuration details:
>>>>>
>>>>>> checking build system type... x86_64-unknown-linux-gnu
>>>>>> checking host system type... x86_64-unknown-linux-gnu
>>>>>> host=x86_64-unknown-linux-gnu
>>>>>>
>>>>>> use=amd64-linux
>>>>>>
>>>>>> Linux-2.6.32-220.el6.x86_64
>>>>> However, during the building of maxima, there is an error when dealing with
>>>>>
>>>>>
>>>>>> ;      - Compiling source file
>>>>>> ;        "/work/karstent/testinstall/maxima/maxima-5.26.0/src/compar.lisp"
>>>>>> Compiling /work/karstent/testinstall/maxima/maxima-5.26.0/src/compar.lisp.
>>>>>> End of Pass 1.
>>>>>>
>>>>>> ;; Note: Tail-recursive call of HAS-INT-SYMBOLS was replaced by iteration.
>>>>>> ;; Note: Tail-recursive call of LIST-MEQP was replaced by iteration.
>>>>>> ;; Note: Tail-recursive call of CONSTP was replaced by iteration.
>>>>>> ;; Note: Tail-recursive call of SIGN was replaced by iteration.
>>>>>> ;; Note: Tail-recursive call of NONINTEGERP was replaced by iteration.
>>>>>> ;; Note: Tail-recursive call of EVOD was replaced by iteration.
>>>>>> End of Pass 2.
>>>>>> OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
>>>>>> Finished compiling binary-gcl/compar.o.
>>>>>>
>>>>>> ;      - Loading binary file "binary-gcl/compar.o"
>>>>>> Loading binary-gcl/compar.o
>>>>>> Error in FUNCALL [or a callee]: The assertion !clear_protect_memory(memory) on line 574 of
sfaslelf.c in function fasload failed
>>>>> I am sorry if this error report does not satisfy formal requirements,
>>>>> I am not even sure if the error should be sent to gcl or maxima.
>>>>>
>>>>> Best regards,
>>>>> Karsten Trulsen
>
>
>
>
>

--

-- 
Camm Maguire			     		    camm <at> maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
Camm Maguire | 20 Jan 20:50
Favicon

Re: maxima build fails using gcl

Greetings, and thanks!

The relevant bits are:

[pid 30971] mprotect(0xf0b000, 22028288, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf0b000, 22028288, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfd8000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfdf000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfcc000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfeb000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf7d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6c000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf75000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf8e000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xffd000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfef000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf8f000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfd6000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfe2000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf40000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf80000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf82000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xffb000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf85000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfe8000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xff6000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf76000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfe5000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xffa000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x100c000, 28671, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf91000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf73000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1006000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1007000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf7d000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x102e000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1016000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1013000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1031000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x101b000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x103c000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1089000, 73727, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1055000, 163839, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x102b000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x103a000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x100c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfe8000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10c7000, 65535, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1025000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1406000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x102d000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x103c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf7c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfd6000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x13e5000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1050000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfe4000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf8c000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf8e000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf3b000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf3a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf98000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf93000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6e000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1005000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1015000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1004000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1024000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1054000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xff9000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xff9000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1054000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf40000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1089000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x107f000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x102a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x107e000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x107f000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1002000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf6a000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xfea000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x107c000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1021000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x100b000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1084000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x101d000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x101d000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1082000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf42000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10db000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf7b000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10db000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf69000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf40000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf68000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1087000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf3e000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1020000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x101e000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10ec000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10f0000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10fb000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10de000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10e4000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10f3000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1027000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10a3000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x109f000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0xf68000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10ea000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10dd000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1025000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10ff000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10a1000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x109d000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1084000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1101000, 36863, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x116b000, 159743, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1141000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1155000, 28671, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10af000, 65535, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10d6000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10e7000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x115b000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1109000, 110591, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10e4000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1135000, 36863, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1191000, 53247, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11c9000, 61439, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x119d000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1165000, 24575, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11e1000, 98303, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11d7000, 32767, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1126000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11de000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11ae000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11b7000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11f8000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11c2000, 24575, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x120a000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x125c000, 49151, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1243000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1288000, 61439, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1299000, 61439, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10be000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1267000, 69631, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1230000, 28671, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10bf000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10e1000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10aa000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1284000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1214000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10c3000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1281000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10eb000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1257000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1088000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x109a000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x102a000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x11a7000, 24575, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10a7000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1209000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10f9000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1209000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x12c7000, 57343, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x12b8000, 53247, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x12f8000, 45055, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x12d5000, 90111, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x13b5000, 159743, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x12f5000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x112f000, 8191, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1130000, 20479, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1342000, 65535, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x130d000, 86015, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10f7000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1130000, 4095, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1216000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1277000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x13db000, 40959, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10db000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x10c3000, 16383, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1240000, 12287, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x1321000, 49151, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
[pid 32129] mprotect(0x474d000, 147455, PROT_READ|PROT_WRITE|PROT_EXEC) = -1 EACCES (Permission denied)

From the mprotect manpage:

       EACCES The  memory  cannot be given the specified access.  This can happen, for example, if you mmap(2) a file
to which you have read-only
              access, then ask mprotect() to mark it PROT_WRITE.

My guess is that your kernel has security settings against executing
code in certain regions.  SElinux?  Did this work before?  Can you run
the precompiled amd64 Debian linux binary?

Take care,

Karsten Trulsen <karstent <at> math.uio.no> writes:

> Dear Camm Maguire,
>
> First, I downloaded gcl from cvs after release 2.6.7-97, and built it
> successfully on:
> Linux vesta.uio.no 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST
> 2011 x86_64 GNU/Linux
> using:
> gcc version 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC)
>
> Then I ran both configure and make of maxima-5.26.0 using the following:
>> echo "configure maxima" 2>&1 | tee -a ../../logfile.maxima
>> strace -f ./configure --prefix=$INSTALL
>> --with-gcl=$HOME/local/bin/gcl 2>&1 | tee -a ../../logfile.maxima
>> echo "make maxima" 2>&1 | tee -a ../../logfile.maxima
>> strace -f make 2>&1 | tee -a ../../logfile.maxima
>
> The logfile can be downloaded from here:
> http://folk.uio.no/karstent/logfile.maxima
> Its size is 81576181 bytes!
>
> Best regards,
> Karsten
>
>
> On 01/18/2012 07:56 PM, Camm Maguire wrote:
>> Greetings!  I cannot reproduce this on a Debian unstable (sid) amd64
>> machine, gcc 4.6.2.
>>
>> The only way this can happen is for mprotect to fail.  I can update the
>> error message to give more info, but you can also run the build under
>> strace -f and see the mprotect errno setting if this is repeatable.
>>
>>  From the manpage:
>>
>> ERRORS
>>         EACCES The  memory  cannot be given the specified access.  This can happen, for example, if you mmap(2) a
file to which you have read-only
>>                access, then ask mprotect() to mark it PROT_WRITE.
>>
>>         EINVAL addr is not a valid pointer, or not a multiple of the system page size.
>>
>>         ENOMEM Internal kernel structures could not be allocated.
>>
>>         ENOMEM Addresses in the range [addr, addr+len] are invalid for the address space of the process, or
specify one or more pages that are not
>>                mapped.  (Before kernel 2.4.19, the error EFAULT was incorrectly produced for these cases.)
>>
>> My guess is ENOMEM.
>>
>> Please keep me posted.
>>
>> Take care,
>>
>> Karsten Trulsen<karstent <at> math.uio.no>  writes:
>>
>>> Dear Camm Maguire,
>>>
>>> Attempt to compile maxima-5.26.0 with the latest gcl (downloaded from
>>> CVS after release 2.6.7-96) is not successful.  The building of gcl
>>> apparently goes well, I reproduce some configuration details:
>>>
>>>> checking build system type... x86_64-unknown-linux-gnu
>>>> checking host system type... x86_64-unknown-linux-gnu
>>>> host=x86_64-unknown-linux-gnu
>>>>
>>>> use=amd64-linux
>>>>
>>>> Linux-2.6.32-220.el6.x86_64
>>> However, during the building of maxima, there is an error when dealing with
>>>
>>>
>>>> ;      - Compiling source file
>>>> ;        "/work/karstent/testinstall/maxima/maxima-5.26.0/src/compar.lisp"
>>>> Compiling /work/karstent/testinstall/maxima/maxima-5.26.0/src/compar.lisp.
>>>> End of Pass 1.
>>>>
>>>> ;; Note: Tail-recursive call of HAS-INT-SYMBOLS was replaced by iteration.
>>>> ;; Note: Tail-recursive call of LIST-MEQP was replaced by iteration.
>>>> ;; Note: Tail-recursive call of CONSTP was replaced by iteration.
>>>> ;; Note: Tail-recursive call of SIGN was replaced by iteration.
>>>> ;; Note: Tail-recursive call of NONINTEGERP was replaced by iteration.
>>>> ;; Note: Tail-recursive call of EVOD was replaced by iteration.
>>>> End of Pass 2.
>>>> OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
>>>> Finished compiling binary-gcl/compar.o.
>>>>
>>>> ;      - Loading binary file "binary-gcl/compar.o"
>>>> Loading binary-gcl/compar.o
>>>> Error in FUNCALL [or a callee]: The assertion !clear_protect_memory(memory) on line 574 of
sfaslelf.c in function fasload failed
>>> I am sorry if this error report does not satisfy formal requirements,
>>> I am not even sure if the error should be sent to gcl or maxima.
>>>
>>> Best regards,
>>> Karsten Trulsen
>
>
>
>

--

-- 
Camm Maguire			     		    camm <at> maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
Camm Maguire | 2 Jan 23:35
Favicon

Re: GCL 2.6.8 on Mac intel, GCC 4.6.1

Greetings!  Just build with 4.6.2 on Debian without issue.  Does this
problem persist?

Take care,

daly <at> axiom-developer.org writes:

> Camm,
>
> I cannot find a combination of flags that will let me build GCL on
> mac osx (10.6.8).
>
> I also am running into problems with the latest Ubuntu/Fedora/Mint
> distros because they are running GCC 4.6.1. This causes a build
> failure in the xgcl code, complaining about a RETURN-FROM.
>
> Suggestions?
>
> Tim
>
>
>
>

--

-- 
Camm Maguire			     		    camm <at> maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
Camm Maguire | 2 Jan 22:45
Favicon

Re: GCL 2.6.8 on Mac intel, GCC 4.6.1

Greetings!  Thanks for the heads up.  Will try latest Debian to see if I
can reproduce.

Take care,

daly <at> axiom-developer.org writes:

> Camm,
>
> I cannot find a combination of flags that will let me build GCL on
> mac osx (10.6.8).
>
> I also am running into problems with the latest Ubuntu/Fedora/Mint
> distros because they are running GCC 4.6.1. This causes a build
> failure in the xgcl code, complaining about a RETURN-FROM.
>
> Suggestions?
>
> Tim
>
>
>
>

--

-- 
Camm Maguire			     		    camm <at> maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
rorymulv | 9 Dec 08:05
Picon

the allocate function

I was using maxima and got an error like this (then I referred to gcl 
documentation):

[

Maxima encountered a Lisp error:

Error in PROGN [or a callee]: The storage for CONS is exhausted.
Currently, 43968 pages are allocated.
Use ALLOCATE to expand the space.

]//end of error

The maxima texinfo manual says to refer to the gcl documentation regarding 
ALLOCATE or GBC.  However, when I look up ALLOCATE in the gcl texinfo 
manual, it doesn't really give the usage details (for allowable "types"), 
and furthermore when I type (ALLOCATE CONS 50000) in gcl, I get an error 
saying "the variable CONS is unbound".  I'm using gcl 2.6.7-62, and 
gcl-doc (same version) in Debian stable, and the maxima version I'm using 
is 5.21.1-2squeeze (in Debian stable).

Thanks and regards,
Rory
Picon

Invitación a conectarnos en LinkedIn

 
 
 
 
From Jose Antonio Garcia Peiro
 
Estudiante de Universidad Miguel Hernández de Elche
Murcia Area, Spain
 
 
 

Me gustaría añadirte a mi red profesional en LinkedIn.

-Jose Antonio

 
 
 
 
 
 
You are receiving Invitation to Connect emails. Unsubscribe
© 2011, LinkedIn Corporation. 2029 Stierlin Ct. Mountain View, CA 94043, USA
 
_______________________________________________
Gcl-devel mailing list
Gcl-devel <at> gnu.org
https://lists.gnu.org/mailman/listinfo/gcl-devel
Donald Winiecki | 18 Aug 20:26

Building GCL on Windows7

I've just configured a Windows7 machine and confirmed that setting up
build tools to compile GCL on Win7 should be done following the
published directions for WinVista.

(In fact, as some who have followed previous discussions on this list
know, building GCL on an updated WinXP machine requires that one
follow the published directions for Vista rather than XP -- this owing
to what we can call the `Vistafication' of WinXP as patches are
installed.)

I'll be updating the directions soon and can make those available to the group.

Best,

_don
Camm Maguire | 12 Jul 18:39
Favicon

Re: GCL compilation on OpenIndiana / OpenSolaris

Greetings!  Thanks for posting, as its been a while since someone
wanted to compile on solaris.  

GCL cvs has new support for inline complex arithmetic.  Apparently
you're system has /usr/include/complex.h, but the syntax is somewhat
different.  If you post the relevant manpages (i.e. try man -k
complex), that would be helpful.

If you choose the stable branch instead, I think the build will likely
proceed out of the box:

cvs -z9 -q co -d gcl-2.6.8pre -rVersion_2_6_8pre gcl

Take care,

Richard Kowalski <richard <at> optimal.org> writes:

> Hi Camm,
>
> When I build GCL from CVS checkout it fails like this:
>
> gcc -c -fsigned-char -pipe -Wall  -O3 -fomit-frame-pointer
> -I/opt/gcl/o -I../h -I../gcl-tk catch.c
> ../bin/dpp symbol
> dpp: symbol.d -> symbol.c
> gcc -c -fsigned-char -pipe -Wall  -O3 -fomit-frame-pointer
> -I/opt/gcl/o -I../h -I../gcl-tk symbol.c
> rm symbol.c
> gcc -D_GNU_SOURCE -c -fsigned-char -pipe -Wall  -O3
> -fomit-frame-pointer  -I/opt/gcl/o -I../h -I../gcl-tk cfun.c
> gcc -c -fsigned-char -pipe -Wall  -O3 -fomit-frame-pointer
> -I/opt/gcl/o -I../h -I../gcl-tk cmpaux.c
> cmpaux.c: In function `object_to_fcomplex':
> cmpaux.c:329: error: `_Imaginary_I' undeclared (first use in this function)
> cmpaux.c:329: error: (Each undeclared identifier is reported only once
> cmpaux.c:329: error: for each function it appears in.)
> cmpaux.c: In function `object_to_dcomplex':
> cmpaux.c:366: error: `_Imaginary_I' undeclared (first use in this function)
> make[1]: *** [cmpaux.o] Error 1
> rm list.c
> make[1]: Leaving directory `/opt/gcl/o'
> make: *** [unixport/saved_pre_gcl] Error 2
> #
>
> Best,
> Richard
>
>
>
> On 07/10/2011 04:49 PM, Richard Kowalski wrote:
>> Hi Camm,
>>
>> I read an email you wrote about being able to compile GNU GCL on
>> OpenSolaris / Nexenta. Do you have a script to do this with patches
>> and such? I would like to build GCL on OpenIndiana.
>>
>> (http://lists.gnu.org/archive/html/gcl-devel/2007-05/msg00034.html)
>>
>> Thanks in Advance!
>>
>> Best,
>> Richard
>>
>
>
>
>
>

--

-- 
Camm Maguire			     		    camm <at> maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah

Gmane