[MacPorts] #46014: scantailor @0.9.11.1_4 build fails with macports-clang-3.4
MacPorts
noreply at macports.org
Tue Nov 25 08:51:35 PST 2014
#46014: scantailor @0.9.11.1_4 build fails with macports-clang-3.4
------------------------------+--------------------------------
Reporter: Martin.vGagern@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.2
Keywords: | Port: scantailor
------------------------------+--------------------------------
This is using port 2.3.2 on OS X 10.8.5.
As discussed in #37877, scantailor fails to build with clang, which I
assume (after reading wiki:UsingTheRightCompiler) means the XCode version
of clang. However, scantailor also fails with the macports-provided clang,
with pretty much the same errors:
{{{
:info:build In file included from
.../scantailor-0.9.11.1/interaction/InteractiveXSpline.cpp:22:
:info:build .../scantailor-0.9.11.1/math/MatrixCalc.h:132:10: error:
calling a private constructor of class 'mcalc::Mat<double>'
:info:build return mcalc::Mat<T>(&m_alloc, vec.data(),
rows, cols);
:info:build ^
:info:build
.../scantailor-0.9.11.1/interaction/InteractiveXSpline.cpp:233:8: note: in
instantiation of function template specialization 'MatrixCalc<double,
mcalc::StaticPoolAllocator<double, 128, 9> >::operator()<4>' requested
here
:info:build (mc(mat, 2, 2)*mc(pt, 2,
1)).write(pt);
:info:build ^
:info:build .../scantailor-0.9.11.1/math/MatrixCalc.h:107:2: note:
declared private here
:info:build Mat(AbstractAllocator<T>* alloc, T const* data, int
rows, int cols)
:info:build ^
:info:build .../scantailor-0.9.11.1/math/MatrixCalc.h:132:10: error:
calling a private constructor of class 'mcalc::Mat<double>'
:info:build return mcalc::Mat<T>(&m_alloc, vec.data(),
rows, cols);
:info:build ^
:info:build
.../scantailor-0.9.11.1/interaction/InteractiveXSpline.cpp:233:22: note:
in instantiation of function template specialization 'MatrixCalc<double,
mcalc::StaticPoolAllocator<double, 128, 9> >::operator()<2>' requested
here
:info:build (mc(mat, 2, 2)*mc(pt, 2,
1)).write(pt);
:info:build ^
:info:build .../scantailor-0.9.11.1/math/MatrixCalc.h:107:2: note:
declared private here
:info:build Mat(AbstractAllocator<T>* alloc, T const* data, int
rows, int cols)
:info:build ^
:info:build 2 errors generated.
:info:build make[2]: ***
[interaction/CMakeFiles/interaction.dir/InteractiveXSpline.cpp.o] Error 1
}}}
Trying to work out the compiler which has been used in the light of this
blacklist, I did the following:
{{{
$ grep -E 'clang|blacklist' .../main.log | grep -v '^:info:build '
:debug:main Sourcing PortGroup compiler_blacklist_versions 1.0 from
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/group/compiler_blacklist_versions-1.0.tcl
:debug:main compiler clang 503.0.38 not blacklisted because it doesn't
match {clang < 211.10.1}
:debug:main clang-3.4 3.4.2_2 exists in the ports tree
:debug:main clang-3.4 3.4.2_2 +analyzer+arm_runtime is the latest
installed
:debug:main clang-3.4 3.4.2_2 +analyzer+arm_runtime is active
:debug:main Sourcing PortGroup compiler_blacklist_versions 1.0 from
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/group/compiler_blacklist_versions-1.0.tcl
:debug:main compiler clang 503.0.38 not blacklisted because it doesn't
match {clang < 421}
:debug:main No need to upgrade! clang-3.4 3.4.2_2 >= clang-3.4 3.4.2_2
:debug:main Sourcing PortGroup compiler_blacklist_versions 1.0 from
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/group/compiler_blacklist_versions-1.0.tcl
:debug:main compiler clang 503.0.38 not blacklisted because it doesn't
match {clang < 421}
:debug:main clang_select 1.0_0 exists in the ports tree
:debug:main clang_select 1.0_0 is the latest installed
:debug:main clang_select 1.0_0 is active
:debug:main Changing to port directory:
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/sysutils/clang_select
:debug:main No need to upgrade! clang_select 1.0_0 >= clang_select 1.0_0
:debug:main Sourcing PortGroup compiler_blacklist_versions 1.0 from
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/group/compiler_blacklist_versions-1.0.tcl
:debug:main compiler clang 503.0.38 not blacklisted because it doesn't
match { clang <= 318.0.61 }
:debug:main Sourcing PortGroup compiler_blacklist_versions 1.0 from
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/group/compiler_blacklist_versions-1.0.tcl
:debug:main compiler clang 503.0.38 not blacklisted because it doesn't
match {clang < 421}
:debug:main Searching for dependency: clang-3.4
:debug:main Found Dependency: receipt exists for clang-3.4
CC='/opt/local/bin/clang-mp-3.4'
CXX='/opt/local/bin/clang++-mp-3.4'
OBJC='/opt/local/bin/clang-mp-3.4'
OBJCXX='/opt/local/bin/clang++-mp-3.4'
:info:configure -- Check for working C compiler: /opt/local/bin/clang-
mp-3.4
:info:configure -- Check for working C compiler: /opt/local/bin/clang-
mp-3.4 -- works
:info:configure -- Check for working CXX compiler:
/opt/local/bin/clang++-mp-3.4
:info:configure -- Check for working CXX compiler:
/opt/local/bin/clang++-mp-3.4 -- works
}}}
So it seems to me as if the compiler being used were the clang version
from MacPorts, and that isn't subject to the blacklist but probably should
be.
Using `compiler.whitelist macports-gcc-4.8` I was able to successfully
build scantailor. It took me a moment to realize that the GUI version was
not a `scantailor` binary on the path but instead
`/Applications/MacPorts/ScanTailor.app`, but once I found that I could
confirm that the application works at least well enough to start up its
GUI.
--
Ticket URL: <https://trac.macports.org/ticket/46014>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list