Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Program not built when use "make" on MacOs #23

Open
SergioHdzReyes opened this issue Jul 8, 2019 · 2 comments
Open

Program not built when use "make" on MacOs #23

SergioHdzReyes opened this issue Jul 8, 2019 · 2 comments

Comments

@SergioHdzReyes
Copy link

SergioHdzReyes commented Jul 8, 2019

When I do "make" I get the following:

[ 9%] Building CXX object googletest-build/googlemock/CMakeFiles/gmock.dir/src/gmock-all.cc.o
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/src/gmock-all.cc:39:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock.h:59:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:51:
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/internal/gmock-internal-utils.h:556:15: error: unknown type name 'ElemFromList'
using Arg = ElemFromList<I, typename MakeIndexSequence<sizeof...(Args)>::type,
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/internal/gmock-internal-utils.h:556:27: error: expected ';' after alias declaration
using Arg = ElemFromList<I, typename MakeIndexSequence<sizeof...(Args)>::type,
^
;
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/internal/gmock-internal-utils.h:561:34: error: unknown type name 'IgnoredValue'
using MakeResultIgnoredValue = IgnoredValue(Args...);
^
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/src/gmock-all.cc:39:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock.h:59:
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:902:46: error: unknown type name 'IndexSequence'
std::vector<Action<void(Args...)>> Convert(IndexSequence<I...>) const {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:902:59: error: expected ')'
std::vector<Action<void(Args...)>> Convert(IndexSequence<I...>) const {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:902:45: note: to match this '('
std::vector<Action<void(Args...)>> Convert(IndexSequence<I...>) const {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:922:32: error: use of undeclared identifier 'MakeIndexSequence'
return Op{Convert<Args...>(MakeIndexSequence<sizeof...(Actions) - 1>()),
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:922:74: error: expected expression
return Op{Convert<Args...>(MakeIndexSequence<sizeof...(Actions) - 1>()),
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-actions.h:959:19: error: no type named 'IgnoredValue' in namespace 'testing::internal'
typedef internal::IgnoredValue Unused;
~~~~~~~~~~^
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/src/gmock-all.cc:39:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock.h:61:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-function-mocker.h:4:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-generated-function-mockers.h:47:
In file included from /Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-spec-builders.h:73:
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:88:42: error: unknown class name 'MatchResultListener'; did you mean 'StringMatchResultListener'?
class StringMatchResultListener : public MatchResultListener {
^~~~~~~~~~~~~~~~~~~
StringMatchResultListener
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:88:7: note: 'StringMatchResultListener' declared here
class StringMatchResultListener : public MatchResultListener {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:88:42: error: base class has incomplete type
class StringMatchResultListener : public MatchResultListener {
~~~~~~~^~~~~~~~~~~~~~~~~~~
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:88:7: note: definition of 'testing::StringMatchResultListener' is not complete until the closing '}'
class StringMatchResultListener : public MatchResultListener {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:90:33: error: member initializer 'MatchResultListener' does not name a non-static data member or base class
StringMatchResultListener() : MatchResultListener(&ss_) {}
^~~~~~~~~~~~~~~~~~~~~~~~~
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:194:23: error: unknown template name 'MatcherInterface'
class Impl : public MatcherInterface {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:200:31: error: unknown type name 'MatchResultListener'
bool MatchAndExplain(T x, MatchResultListener* listener) const override {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:218:47: error: only virtual member functions can be marked 'override'
void DescribeTo(::std::ostream* os) const override {
^~~~~~~~~
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:222:55: error: only virtual member functions can be marked 'override'
void DescribeNegationTo(::std::ostream* os) const override {
^~~~~~~~~
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:337:27: error: unknown type name 'MatchResultListener'
MatchResultListener* listener) {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:492:31: error: unknown template name 'MatcherInterface'
class AnyMatcherImpl : public MatcherInterface<const T&> {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:495:24: error: unknown type name 'MatchResultListener'
MatchResultListener* /* listener /) const override {
^
/Users/sergiohernandez/CLionProjects/include_gardener/build/googletest-src/googlemock/include/gmock/gmock-matchers.h:498:45: error: only virtual member functions can be marked 'override'
void DescribeTo(::std::ostream
os) const override { *os << "is anything"; }
^~~~~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [googletest-build/googlemock/CMakeFiles/gmock.dir/src/gmock-all.cc.o] Error 1
make[1]: *** [googletest-build/googlemock/CMakeFiles/gmock.dir/all] Error 2
make: *** [all] Error 2

Can you help me to use your program? Thanks

@feddischson
Copy link
Owner

Hi,

which GCC version are you using?

The error happens when compiling gtest (gmock) library.
Could you try to create a simple test program and then compile and link it with gtest first?

@jonasseglare
Copy link

I get similar errors, using Clang on Debian. Calling clang++ --version prints this:

clang version 10.0.0 (https://github.com/llvm/llvm-project.git b399252028f02f8e32382aaeda9960e67b7fd514)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/scratch/ostlund/syslocal/bin

and when compiling, I get errors such as

googletest/googlemock/include/gmock/internal/gmock-internal-utils.h:553:40: error: no template named 'MakeIndexSequence'
  using Arg = ElemFromList<I, typename MakeIndexSequence<sizeof...(Args)>::type,
                                       ^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants