[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Can't install octave-forge packages in a 32-bit OS X build, but can
From: |
Ben Abbott |
Subject: |
Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one |
Date: |
Sat, 05 Nov 2011 11:57:22 -0400 |
On Nov 5, 2011, at 8:54 AM, Alexander Hansen wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 11/4/11 9:03 PM, Alexander Hansen wrote:
>> Hi. I'm the maintainer for Octave for the Fink project, serving
>> Mac OS X.
>>
>> One of our users reported a problem in Octave-3.4.3, built as
>> 32-bit, on Mac OS 10.6.8, which I confirmed, wherein 'pkg' was
>> unable to install anything, e.g :
>>
>> octave:1> pkg -verbose install physicalconstants-0.1.7.tar.gz mkdir
>> (/var/tmp/oct-2rjbOh) untar (physicalconstants-0.1.7.tar.gz,
>> /var/tmp/oct-2rjbOh) invalid assignment to cs-list outside multiple
>> assignment error: called from `dir' in file
>> /sw32/share/octave/3.4.3/m/miscellaneous/dir.m near line 115,
>> column 26 error: called from: error:
>> /sw32/share/octave/3.4.3/m/pkg/pkg.m at line 832, column 5 error:
>> /sw32/share/octave/3.4.3/m/pkg/pkg.m at line 361, column 9
>>
>> I've tried removing some semicolons to see if I can debug where
>> this goes awry, but it appears to be simply the assignment on line
>> 115 of dir.m:
>>
>> info(i,1).name = fn;
>>
>>
>> In contrast, a 64-bit build on the same machine works properly.
>> The two builds use the same C and C++ compilers:
>>
>> octave:4> octave_config_info('CC_VERSION') ans = 4.2.1 (Apple Inc.
>> build 5666) (dot 3) octave:5> octave_config_info('CXX_VERSION') ans
>> = 4.2.1
>>
>> (Xcode tools 3.2.6) but different Fortran compilers: a 32-bit
>> gfortran and a 64-bit gfortran, respectively, for the 32-bit and
>> 64-bit Octave.
>>
>> Apart from the expected differences I'd naively expect from 32 vs.
>> 64 bits, I also saw a few other things. The 64-bit build's
>> configuration had:
>>
>> checking for working mktime... no
>>
>> vs. "yes" on the 32-bit one. Also, the 64-bit build had
>>
>> checking for working nanosleep... no (mishandles large arguments)
>>
>> whereas the 32-bit one had "yes". Only the 32-bit build was given
>> the -mieee-fp modifier ("flag-sort -r" is a Perl script that we use
>> that changes the ordering of arguments to the compiler--it was
>> needed in this case because of a conflict with another package):
>>
>> checking whether flag-sort -r gcc accepts -mieee-fp... yes
>> configure: adding -mieee-fp to XTRA_CFLAGS checking whether
>> flag-sort -r g++ accepts -mieee-fp... yes configure: adding
>> -mieee-fp to XTRA_CXXFLAGS ... checking whether
>> /sw32/bin/gfortran-fsf-4.6 accepts -mieee-fp... yes adding
>> -mieee-fp to FFLAGS configure: defining FFLAGS to be -O3 -mieee-fp
>>
>>
>> In the build output, the only thing that seemed to be different
>> between the two cases was the presence of the -mieee-fp flag.
>>
>> I'm stumped here, so I'd appreciate any suggestions, and I'll
>> gladly provide any additional information.
>
> A couple of addenda:
>
> 1) Just to be clear: the 32-bit and 64-bit builds use the same
> configuration instructions on my end.
>
> 2) I see the same thing on OS X 10.5: 64-bit works properly, 32-bit
> doesn't.
>
> 3) The user who reported the problem to me has a simple test case to
> illustrate the failure:
>
> On my 64-bit build:
>
> octave-3.4.3:1> info = struct (zeros (0, 1), {"name", "date", "bytes",
> "isdir","datenum", "statinfo"});
> octave-3.4.3:2> info(1,1).name = "asdf"
> info =
>
> scalar structure containing the fields:
>
> name = asdf
> date = [](0x0)
> bytes = [](0x0)
> isdir = [](0x0)
> datenum = [](0x0)
> statinfo = [](0x0)
>
> On the 32-bit build:
>
> octave-3.4.3:1> info = struct (zeros (0, 1), {"name", "date", "bytes",
> "isdir","datenum", "statinfo"});
> octave-3.4.3:2> info(1,1).name = "asdf"
> error: invalid assignment to cs-list outside multiple assignment
Alex,
Does this only fail after you've tried to load an octave-forge package?
I am currently able to build Octave with 64bits on MacOS 10.7 using MacPorts
for dependencies (I haven't tried to build the 32 bit version there), and am
able to build a 32bit version on 10.6 using Fink for dependencies. My Mac with
Fink installed is currently being updated (the packages are a few months old
now). I hope to confirm I'm able to build the developers sources and that I
don't encounter the cs-list error later today.
I plan to compare Fink's info file to the build script I use for the developers
sources on 10.6.
http://pdb.finkproject.org/pdb/package.php/octave
At first glance I notice you've made a lot of changes in Fink's support of
Octave. I'll update the etc/README.MacOS file to reflect that.
Ben
- Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/04
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one,
Ben Abbott <=
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Ben Abbott, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Ben Abbott, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, c., 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, c., 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Ben Abbott, 2011/11/05
- Re: Can't install octave-forge packages in a 32-bit OS X build, but can in a 64-bit one, Alexander Hansen, 2011/11/06