Building Scan Tailor on OSX
Moderator: peterZ
Re: Building Scan Tailor on OSX
Again, I am no expert on OSX dynamic linker, but on Linux, statically linking to those libraries wouldn't have helped. Linking them statically wouldn't prevent their symbols from being exported (from the scantailor executable) and therefore from being available for Qt to bind to.
Scan Tailor experimental doesn't output 96 DPI images. It's just what your software shows when DPI information is missing. Usually what you get is input DPI times the resolution enhancement factor.
Re: Building Scan Tailor on OSX
I still do not believe it was the issue, but I suppose it could have been. If it were, wouldn't the errors in the crash dump have pointed to some function trying to actually utilize the library functions? It was crashing in the QEventLoop::exec method. I was puzzled by that, which is why I tried a different Qt (was going to compile my own next) because there was no trace of where or what it was doing that was causing it to die.
Also, the precompiled Qt libraries appear to be built so that they do not use the system imaging libraries, they use plugin modules named libqjpeg, libqtiff, etc (although no png unless the libqmng handles png too). At any rate, this also would avoid the above issue if I'm not mistaken.
Thanks again for your hard work, even though I haven't build a scanner yet (soon!) this will undoubtedly be extremely useful.
Also, the precompiled Qt libraries appear to be built so that they do not use the system imaging libraries, they use plugin modules named libqjpeg, libqtiff, etc (although no png unless the libqmng handles png too). At any rate, this also would avoid the above issue if I'm not mistaken.
Thanks again for your hard work, even though I haven't build a scanner yet (soon!) this will undoubtedly be extremely useful.
Re: Building Scan Tailor on OSX
Hi
With the new version, the program doesn't crash anymore when I run it on a mixed folder, but it seems that Scan Tailor can't quite grasp the png image, which is left with a question mark in "Select content/Margins". This of course means that one can't get to "Output" as the final size of pages isn't decided.
With the new version, the program doesn't crash anymore when I run it on a mixed folder, but it seems that Scan Tailor can't quite grasp the png image, which is left with a question mark in "Select content/Margins". This of course means that one can't get to "Output" as the final size of pages isn't decided.
Re: Building Scan Tailor on OSX
I just ran a batch on the PowerPC G4 system I have, running 10.5, and I cannot duplicate this. I will have to try it on a few other systems at work next week with different OS versions and Intel/PPC processors.knappen wrote:when I run it on a mixed folder, but it seems that Scan Tailor can't quite grasp the png image, which is left with a question mark in "Select content/Margins". This of course means that one can't get to "Output" as the final size of pages isn't decided.
Re: Building Scan Tailor on OSX
I have followed the instructions to build Scan Tailor on OSX (I have Snow Leopard, 10.6.4) to the dot. I get a compiling error when I get to 83% and I can't get past that:
[ 83%] Building CXX object CMakeFiles/scantailor.dir/ProjectFilesDialog.cpp.o
/opt/local/include/boost/lambda/detail/function_adaptors.hpp: In static member function ‘static RET boost::lambda::function_adaptor<T Object::*>::apply(T Object::*, const Object&) [with RET = int&, Object = std::pair<int, int>, T = int]’:
/opt/local/include/boost/lambda/detail/actions.hpp:87: instantiated from ‘static RET boost::lambda::function_action<2, T>::apply(A1&, A2&) [with RET = int&, A1 = int std::pair<int, int>::* const, A2 = const std::pair<int, int>, T = boost::lambda::detail::unspecified]’
/opt/local/include/boost/lambda/detail/lambda_functor_base.hpp:424: instantiated from ‘RET boost::lambda::lambda_functor_base<boost::lambda::action<2, Act>, Args>::call(A&, B&, C&, Env&) const [with RET = int&, A = const std::pair<int, int>, B = const std::pair<int, int>, C = const boost::tuples::null_type, Env = const boost::tuples::null_type, Act = boost::lambda::function_action<2, boost::lambda::detail::unspecified>, Args = boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>]’
/opt/local/include/boost/lambda/detail/select_functions.hpp:30: instantiated from ‘typename Arg::sig<boost::tuples::tuple<A&, B&, C&, Env&, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >::type boost::lambda::detail::select(const boost::lambda::lambda_functor<T>&, A&, B&, C&, Env&) [with Arg = boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >, A = const std::pair<int, int>, B = const std::pair<int, int>, C = const boost::tuples::null_type, Env = const boost::tuples::null_type]’
/opt/local/include/boost/lambda/detail/operator_lambda_func_base.hpp:218: instantiated from ‘RET boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, Args>::call(A&, B&, C&, Env&) const [with RET = bool, A = const std::pair<int, int>, B = const std::pair<int, int>, C = const boost::tuples::null_type, Env = const boost::tuples::null_type, Args = boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>]’
/opt/local/include/boost/lambda/detail/lambda_functors.hpp:234: instantiated from ‘typename T::sig<boost::tuples::tuple<const A&, const B&, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >::type boost::lambda::lambda_functor<Base>::operator()(const A&, const B&) const [with A = std::pair<int, int>, B = std::pair<int, int>, T = boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >]’
/usr/include/c++/4.2.1/bits/stl_algo.h:125: instantiated from ‘const _Tp& std::__median(const _Tp&, const _Tp&, const _Tp&, _Compare) [with _Tp = std::pair<int, int>, _Compare = boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >]’
/usr/include/c++/4.2.1/bits/stl_algo.h:2795: instantiated from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = std::pair<int, int>*, _Size = long int, _Compare = boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >]’
/usr/include/c++/4.2.1/bits/stl_algo.h:2866: instantiated from ‘void std::sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::pair<int, int>*, _Compare = boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >]’
/Users/anabeli/Downloads/scantailor-0.9.9.1/ProjectFilesDialog.cpp:703: instantiated from here
/opt/local/include/boost/lambda/detail/function_adaptors.hpp:264: error: invalid initialization of reference of type ‘int&’ from expression of type ‘const int’
make[2]: *** [CMakeFiles/scantailor.dir/ProjectFilesDialog.cpp.o] Error 1
make[1]: *** [CMakeFiles/scantailor.dir/all] Error 2
make: *** [all] Error 2
How can I fix this?
Many thanks,
Anabeli
[ 83%] Building CXX object CMakeFiles/scantailor.dir/ProjectFilesDialog.cpp.o
/opt/local/include/boost/lambda/detail/function_adaptors.hpp: In static member function ‘static RET boost::lambda::function_adaptor<T Object::*>::apply(T Object::*, const Object&) [with RET = int&, Object = std::pair<int, int>, T = int]’:
/opt/local/include/boost/lambda/detail/actions.hpp:87: instantiated from ‘static RET boost::lambda::function_action<2, T>::apply(A1&, A2&) [with RET = int&, A1 = int std::pair<int, int>::* const, A2 = const std::pair<int, int>, T = boost::lambda::detail::unspecified]’
/opt/local/include/boost/lambda/detail/lambda_functor_base.hpp:424: instantiated from ‘RET boost::lambda::lambda_functor_base<boost::lambda::action<2, Act>, Args>::call(A&, B&, C&, Env&) const [with RET = int&, A = const std::pair<int, int>, B = const std::pair<int, int>, C = const boost::tuples::null_type, Env = const boost::tuples::null_type, Act = boost::lambda::function_action<2, boost::lambda::detail::unspecified>, Args = boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>]’
/opt/local/include/boost/lambda/detail/select_functions.hpp:30: instantiated from ‘typename Arg::sig<boost::tuples::tuple<A&, B&, C&, Env&, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >::type boost::lambda::detail::select(const boost::lambda::lambda_functor<T>&, A&, B&, C&, Env&) [with Arg = boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >, A = const std::pair<int, int>, B = const std::pair<int, int>, C = const boost::tuples::null_type, Env = const boost::tuples::null_type]’
/opt/local/include/boost/lambda/detail/operator_lambda_func_base.hpp:218: instantiated from ‘RET boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, Args>::call(A&, B&, C&, Env&) const [with RET = bool, A = const std::pair<int, int>, B = const std::pair<int, int>, C = const boost::tuples::null_type, Env = const boost::tuples::null_type, Args = boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type>]’
/opt/local/include/boost/lambda/detail/lambda_functors.hpp:234: instantiated from ‘typename T::sig<boost::tuples::tuple<const A&, const B&, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >::type boost::lambda::lambda_functor<Base>::operator()(const A&, const B&) const [with A = std::pair<int, int>, B = std::pair<int, int>, T = boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> >]’
/usr/include/c++/4.2.1/bits/stl_algo.h:125: instantiated from ‘const _Tp& std::__median(const _Tp&, const _Tp&, const _Tp&, _Compare) [with _Tp = std::pair<int, int>, _Compare = boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >]’
/usr/include/c++/4.2.1/bits/stl_algo.h:2795: instantiated from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = std::pair<int, int>*, _Size = long int, _Compare = boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >]’
/usr/include/c++/4.2.1/bits/stl_algo.h:2866: instantiated from ‘void std::sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::pair<int, int>*, _Compare = boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::relational_action<boost::lambda::less_action>, boost::tuples::tuple<boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<1> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::lambda::lambda_functor<boost::lambda::lambda_functor_base<boost::lambda::action<2, boost::lambda::function_action<2, boost::lambda::detail::unspecified> >, boost::tuples::tuple<int std::pair<int, int>::* const, const boost::lambda::lambda_functor<boost::lambda::placeholder<2> >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type, boost::tuples::null_type> > >]’
/Users/anabeli/Downloads/scantailor-0.9.9.1/ProjectFilesDialog.cpp:703: instantiated from here
/opt/local/include/boost/lambda/detail/function_adaptors.hpp:264: error: invalid initialization of reference of type ‘int&’ from expression of type ‘const int’
make[2]: *** [CMakeFiles/scantailor.dir/ProjectFilesDialog.cpp.o] Error 1
make[1]: *** [CMakeFiles/scantailor.dir/all] Error 2
make: *** [all] Error 2
How can I fix this?
Many thanks,
Anabeli
Re: Building Scan Tailor on OSX
It's an incompatibility with the latest boost. It's fixed in Git, so you can build that, or you can take just the file ProjectFilesDialog.cpp from there. I do plan to make a new release in the nearest future, so your third option would be waiting for that to happen. Oh, and the fourth one is to downgrade boost.
Scan Tailor experimental doesn't output 96 DPI images. It's just what your software shows when DPI information is missing. Usually what you get is input DPI times the resolution enhancement factor.
Re: Building Scan Tailor on OSX
Git worked fine. Thanks a lot!
-
- Posts: 13
- Joined: 08 Nov 2010, 02:56
- Number of books owned: 0
- Country: USA
- Location: Online
- Contact:
Re: Building Scan Tailor on OSX
Hey everyone, I am still making my rounds around these threads, so forgive me if i ask a redundant question. Can someone point me to the URL for Scan Tailor MAC version.
Thanks in advance,
Thanks in advance,
- daniel_reetz
- Posts: 2812
- Joined: 03 Jun 2009, 13:56
- E-book readers owned: Used to have a PRS-500
- Number of books owned: 600
- Country: United States
- Contact:
-
- Posts: 13
- Joined: 08 Nov 2010, 02:56
- Number of books owned: 0
- Country: USA
- Location: Online
- Contact:
Re: Building Scan Tailor on OSX
Thanks daniel I will try it out.