octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Octave on Yosemite via Fink


From: Ben Abbott
Subject: Re: Octave on Yosemite via Fink
Date: Fri, 28 Nov 2014 21:05:56 -0500

On Nov 28, 2014, at 4:24 PM, Ben Abbott <address@hidden> wrote:

On Nov 27, 2014, at 9:14 AM, Ben Abbott <address@hidden> wrote:

On Nov 27, 2014, at 9:11 AM, Marius Schamschula <address@hidden> wrote:

Ben,

On Nov 27, 2014, at 7:28 AM, Ben Abbott <address@hidden> wrote:

On Nov 26, 2014, at 7:09 PM, Marius Schamschula <address@hidden> wrote:

Ben,
On Nov 26, 2014, at 6:02 PM, Ben Abbott <address@hidden> wrote:

On Nov 26, 2014, at 7:02 PM, Marius Schamschula <address@hidden> wrote:

Ben,

On Nov 26, 2014, at 3:45 PM, Ben Abbott <address@hidden> wrote:

I’ve managed to build Octave on Yosemite using Fink for dependencies. I essentially copied the process developed by Alexander Hansen who maintains Octave for Fink.

For those interested, I’m attached two scripts. One is needed to patch Octave (a link to the patch is found in the patch script), and the second is needed to build.

To manage a build, 

(1) fink install bison
(2) fink install octave-atlas-qtmac-dev
(3) From the Octave’s build directory (you’ll need to clone the sources)
(4) run patch_octave.sh
(5) run configure_octave.sh
(6) make
(7) ./run_octave

Don't run the install as it will install into Fink's directory structure.

Ben

<patch_octave.sh><configure_octave.sh>


I adapted the Fink patches to MacPorts, and now I no longer see the Abort Trap 6 crash when exiting.

Great.  So far I haven’t been successful with adapting them to macports.

Can you attached the scripts you used?

Ben

Here are the patches:

<Portfile-octave.diff>
<octave-3.8.2-clang-libcxx.patch>

Note: I edited the libcxx patch, rather than using a different patch strip number.

Thanks.

If you or anyone else manages to build from a cloned repository, please let me know. I’m seeing errors like the one below.

In file included from octave.cc:53:
In file included from corefcn/defun.h:30:
In file included from corefcn/defun-int.h:28:
In file included from ./octave-value/ov-builtin.h:28:
In file included from ./octave-value/ov-fcn.h:35:
In file included from corefcn/symtab.h:29:
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:967:50: error: no viable conversion from 'const_iterator' (aka '__tree_const_iterator<value_type, __node_pointer, difference_type>') to
     'const_iterator' (aka '__map_const_iterator<typename __base::const_iterator>')
   const_iterator end() const _NOEXCEPT {return __tree_.end();}
                                                ^~~~~~~~~~~~~
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:878:37: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >,
     std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::end' requested here
           insert(__m.begin(), __m.end());
                                   ^
./octave-value/ov-classdef.h:455:46: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>,
     std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::map' requested here
   : cdef_object_base (obj), map (obj.map), ctor_list (obj.ctor_list) { }
                                            ^
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:713:29: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'const_iterator' (aka
     '__tree_const_iterator<value_type, __node_pointer, difference_type>') to 'const std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<cdef_class,
     std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *>
     *, long> > &' for 1st argument
class _LIBCPP_TYPE_VIS_ONLY __map_const_iterator
                           ^
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:739:5: note: candidate constructor not viable: no known conversion from 'const_iterator' (aka '__tree_const_iterator<value_type, __node_pointer,
     difference_type>') to '__map_iterator<typename __tree_const_iterator<__value_type<cdef_class, list<cdef_class, allocator<cdef_class> > >, __tree_node<__value_type<cdef_class, list<cdef_class,
     allocator<cdef_class> > >, void *> *, long>::__non_const_iterator>' for 1st argument
   __map_const_iterator(
   ^
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:984:51: error: member function 'end' not viable: 'this' argument has type 'const std::__1::map<cdef_class, std::__1::list<cdef_class,
     std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >', but
     function is not marked const
   const_iterator cend() const _NOEXCEPT {return end();}
                                                 ^~~
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:1052:39: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >,
     std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::cend' requested here
           for (const_iterator __e = cend(); __f != __l; ++__f)
                                     ^
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:878:13: note: in instantiation of function template specialization 'std::__1::map<cdef_class, std::__1::list<cdef_class,
     std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > >
::insert<std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >,
     std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *, long> > >' requested here
           insert(__m.begin(), __m.end());
           ^
./octave-value/ov-classdef.h:455:46: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>,
     std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::map' requested here
   : cdef_object_base (obj), map (obj.map), ctor_list (obj.ctor_list) { }
                                            ^
/opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:965:20: note: 'end' declared here
         iterator end() _NOEXCEPT {return __tree_.end();}
                  ^

Ben

From the errors you are seeing, I’m assuming you are building on an earlier version of OS X. I had no errors with Mavericks and Yosemite (using Xcode 6.1). I have not tested on Mountain Lion or older, as I currently don’t have any machines running these OSs.

FYI, I am building the octave +atlas +gcc48 +gui variant

Marius
--
Marius Schamschula

Using the Portfile works, but that isn’t what I need. I’d like to build directly from my cloned repository (for development purposes).

Ben

Today, I tried to build and install the stable branch using Marius’ modified Portfile. All worked as it should. I haven’t tried the gui-release yet, but the default branch does not build correctly with Macports.

When I have time, I need to determine if I can build the default branch using Fink.

Ben

I didn’t bother to check if an error occurred when exiting Octave 3.8.2 built with Macports. Unfortunately, it did.

I tried both the version built using the Macports Portfile and the patched one with the clang patch produce the "Abort trap: 6" error with exiting.

Ben


reply via email to

[Prev in Thread] Current Thread [Next in Thread]