Web lists-archives.com

Re: How to install gcc and g++ 6 on cygwin which are not on the setup.exe




Ken Brown, on Saturday, May 18, 2019 11:54 AM, wrote...
>On 5/18/2019 8:19 AM, Jose Isaias Cabrera wrote:
> > I am finished and now to start building Bedrockdb. Thanks.
>
> By the way, you're not the only person building Bedrockdb on Cygwin.  Someone
> has posted about 10 fixes in the last few days:
>
>    https://github.com/Expensify/Bedrock/issues
>
> It looks like this person is porting the source code to gcc-7.4.0.

Thanks, Ken.  Maybe I should go back to my original plan to build with gcc-7.4.0.  These are all the errors that I am getting with gcc 6.4.0, which I just took two days to build:

e608313@HOR711318E ~/Bedrock
$ CC=gcc GXX=g++ make
g++ -g -std=c++14 -fpic -O2 -Wall -Werror -Wformat-security -DGIT_REVISION=ce62c88 -I/home/e608313/Bedrock -I/home/e608313/Bedrock/mbedtls/include -MMD -MF libstuff/libstuff.d -MT libstuff/libstuff.h.gch -c libstuff/libstuff.h
libstuff/libstuff.h:424:17: error: ‘recursive_mutex’ does not name a type
         mutable recursive_mutex m;
                 ^~~~~~~~~~~~~~~
libstuff/libstuff.h: In member function ‘std::__cxx11::string std::atomic<std::__cxx11::basic_string<char> >::operator=(std::__cxx11::string)’:
libstuff/libstuff.h:399:23: error: ‘m’ was not declared in this scope
             SAUTOLOCK(m);
                       ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/libstuff.h:399:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h:388:58: error: unused variable ‘__SAUTOLOCK___LINE__’ [-Werror=unused-variable]
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                          ^
libstuff/libstuff.h:399:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h: In member function ‘void std::atomic<std::__cxx11::basic_string<char> >::store(std::__cxx11::string, std::memory_order)’:
libstuff/libstuff.h:407:23: error: ‘m’ was not declared in this scope
             SAUTOLOCK(m);
                       ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/libstuff.h:407:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h:388:58: error: unused variable ‘__SAUTOLOCK___LINE__’ [-Werror=unused-variable]
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                          ^
libstuff/libstuff.h:407:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h: In member function ‘std::__cxx11::string std::atomic<std::__cxx11::basic_string<char> >::load(std::memory_order) const’:
libstuff/libstuff.h:411:23: error: ‘m’ was not declared in this scope
             SAUTOLOCK(m);
                       ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/libstuff.h:411:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h:388:58: error: unused variable ‘__SAUTOLOCK___LINE__’ [-Werror=unused-variable]
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                          ^
libstuff/libstuff.h:411:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h: In member function ‘std::__cxx11::string std::atomic<std::__cxx11::basic_string<char> >::exchange(std::__cxx11::string, std::memory_order)’:
libstuff/libstuff.h:416:23: error: ‘m’ was not declared in this scope
             SAUTOLOCK(m);
                       ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/libstuff.h:416:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h:388:58: error: unused variable ‘__SAUTOLOCK___LINE__’ [-Werror=unused-variable]
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                          ^
libstuff/libstuff.h:416:13: note: in expansion of macro ‘SAUTOLOCK’
             SAUTOLOCK(m);
             ^~~~~~~~~
libstuff/libstuff.h: In function ‘bool SIEquals(const string&, const string&)’:
libstuff/libstuff.h:479:105: error: ‘strcasecmp’ was not declared in this scope
 inline bool SIEquals(const string& lhs, const string& rhs) { return !strcasecmp(lhs.c_str(), rhs.c_str()); }
                                                                                                         ^
In file included from libstuff/libstuff.h:858:0:
libstuff/STCPManager.h: At global scope:
libstuff/STCPManager.h:39:9: error: ‘recursive_mutex’ does not name a type
         recursive_mutex sendRecvMutex;
         ^~~~~~~~~~~~~~~
libstuff/STCPManager.h:63:67: error: ‘recursive_mutex’ has not been declared
     Socket* openSocket(const string& host, SX509* x509 = nullptr, recursive_mutex* listMutexPtr = nullptr);
                                                                   ^~~~~~~~~~~~~~~
In file included from libstuff/libstuff.h:859:0:
libstuff/STCPServer.h:40:5: error: ‘mutex’ does not name a type
     mutex portListMutex;
     ^~~~~
In file included from libstuff/libstuff.h:860:0:
libstuff/STCPNode.h:64:9: error: ‘recursive_mutex’ does not name a type
         recursive_mutex socketMutex;
         ^~~~~~~~~~~~~~~
In file included from libstuff/libstuff.h:861:0:
libstuff/SHTTPSManager.h:61:5: error: ‘recursive_mutex’ does not name a type
     recursive_mutex _listMutex;
     ^~~~~~~~~~~~~~~
In file included from libstuff/libstuff.h:864:0:
libstuff/SRandom.h:7:27: error: ‘uint’ has not been declared
     static string randStr(uint& length);
                           ^~~~
In file included from libstuff/libstuff.h:867:0:
libstuff/SSynchronizedQueue.h:39:13: error: ‘recursive_mutex’ does not name a type
     mutable recursive_mutex _queueMutex;
             ^~~~~~~~~~~~~~~
libstuff/SSynchronizedQueue.h: In member function ‘bool SSynchronizedQueue<T>::empty() const’:
libstuff/SSynchronizedQueue.h:83:15: error: ‘_queueMutex’ was not declared in this scope
     SAUTOLOCK(_queueMutex);
               ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/SSynchronizedQueue.h:83:5: note: in expansion of macro ‘SAUTOLOCK’
     SAUTOLOCK(_queueMutex);
     ^~~~~~~~~
libstuff/SSynchronizedQueue.h: In member function ‘virtual const T& SSynchronizedQueue<T>::front() const’:
libstuff/SSynchronizedQueue.h:89:15: error: ‘_queueMutex’ was not declared in this scope
     SAUTOLOCK(_queueMutex);
               ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/SSynchronizedQueue.h:89:5: note: in expansion of macro ‘SAUTOLOCK’
     SAUTOLOCK(_queueMutex);
     ^~~~~~~~~
libstuff/SSynchronizedQueue.h: In member function ‘virtual T SSynchronizedQueue<T>::pop()’:
libstuff/SSynchronizedQueue.h:98:15: error: ‘_queueMutex’ was not declared in this scope
     SAUTOLOCK(_queueMutex);
               ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/SSynchronizedQueue.h:98:5: note: in expansion of macro ‘SAUTOLOCK’
     SAUTOLOCK(_queueMutex);
     ^~~~~~~~~
libstuff/SSynchronizedQueue.h: In member function ‘virtual void SSynchronizedQueue<T>::push(T&&)’:
libstuff/SSynchronizedQueue.h:109:15: error: ‘_queueMutex’ was not declared in this scope
     SAUTOLOCK(_queueMutex);
               ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/SSynchronizedQueue.h:109:5: note: in expansion of macro ‘SAUTOLOCK’
     SAUTOLOCK(_queueMutex);
     ^~~~~~~~~
libstuff/SSynchronizedQueue.h: In member function ‘size_t SSynchronizedQueue<T>::size() const’:
libstuff/SSynchronizedQueue.h:120:15: error: ‘_queueMutex’ was not declared in this scope
     SAUTOLOCK(_queueMutex);
               ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/SSynchronizedQueue.h:120:5: note: in expansion of macro ‘SAUTOLOCK’
     SAUTOLOCK(_queueMutex);
     ^~~~~~~~~
libstuff/SSynchronizedQueue.h: In member function ‘void SSynchronizedQueue<T>::each(std::function<void(T&)>)’:
libstuff/SSynchronizedQueue.h:126:15: error: ‘_queueMutex’ was not declared in this scope
     SAUTOLOCK(_queueMutex);
               ^
libstuff/libstuff.h:388:48: note: in definition of macro ‘SAUTOLOCK’
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                ^~~~~~~
libstuff/libstuff.h:388:56: error: template argument 1 is invalid
 #define SAUTOLOCK(_MUTEX_) lock_guard<decltype(_MUTEX_)> __SAUTOLOCK_##__LINE__(_MUTEX_);
                                                        ^
libstuff/SSynchronizedQueue.h:126:5: note: in expansion of macro ‘SAUTOLOCK’
     SAUTOLOCK(_queueMutex);
     ^~~~~~~~~
cc1plus: all warnings being treated as errors
make: *** No rule to make target 'libstuff/libstuff.d', needed by '.build/libstuff/libstuff.d'.  Stop.


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple