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

Errors while compiling on FreeBSD 10.1 #203

Closed
rayrapetyan opened this issue May 8, 2015 · 2 comments
Closed

Errors while compiling on FreeBSD 10.1 #203

rayrapetyan opened this issue May 8, 2015 · 2 comments

Comments

@rayrapetyan
Copy link

Errors are similar in clang and gcc:

clang:
./configure LDFLAGS=-L/usr/local/lib LIBS=-lexecinfo CXXFLAGS=-I/usr/local/include

make  all-recursive
Making all in .
depbase=`echo Bits.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`; /bin/sh ./libtool  --tag=CXX    --mode=compile c++ -DHAVE_CONFIG_H    -I./.. -pthread -I/usr/local/include    -std=gnu++0x -I/usr/local/include -MT Bits.lo -MD -MP -MF $depbase.Tpo -c -o Bits.lo Bits.cpp && mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  c++ -DHAVE_CONFIG_H -I./.. -pthread -I/usr/local/include -std=gnu++0x -I/usr/local/include -MT Bits.lo -MD -MP -MF .deps/Bits.Tpo -c Bits.cpp  -fPIC -DPIC -o .libs/Bits.o
libtool: compile:  c++ -DHAVE_CONFIG_H -I./.. -pthread -I/usr/local/include -std=gnu++0x -I/usr/local/include -MT Bits.lo -MD -MP -MF .deps/Bits.Tpo -c Bits.cpp -o Bits.o >/dev/null 2>&1
depbase=`echo detail/CacheLocality.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`; /bin/sh ./libtool  --tag=CXX    --mode=compile c++ -DHAVE_CONFIG_H    -I./.. -pthread -I/usr/local/include    -std=gnu++0x -I/usr/local/include -MT detail/CacheLocality.lo -MD -MP -MF $depbase.Tpo -c -o detail/CacheLocality.lo detail/CacheLocality.cpp && mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  c++ -DHAVE_CONFIG_H -I./.. -pthread -I/usr/local/include -std=gnu++0x -I/usr/local/include -MT detail/CacheLocality.lo -MD -MP -MF detail/.deps/CacheLocality.Tpo -c detail/CacheLocality.cpp  -fPIC -DPIC -o detail/.libs/CacheLocality.o
In file included from detail/CacheLocality.cpp:21:
In file included from /usr/include/c++/v1/fstream:169:
In file included from /usr/include/c++/v1/ostream:131:
In file included from /usr/include/c++/v1/ios:216:
In file included from /usr/include/c++/v1/__locale:18:
In file included from /usr/include/c++/v1/mutex:176:
In file included from /usr/include/c++/v1/__mutex_base:17:
/usr/include/pthread.h:261:7: error: functions that differ only in their return type cannot be overloaded
void            pthread_yield(void);
                ^
./../folly/Portability.h:41:25: note: expanded from macro 'pthread_yield'
  #define pthread_yield sched_yield
                        ^
/usr/include/sched.h:242:9: note: previous declaration is here
int     sched_yield(void);
        ^
1 error generated.
*** Error code 1

Stop.
make[2]: stopped in /ara/incoming/fb/proxygen-master/proxygen/folly/folly
*** Error code 1

Stop.
make[1]: stopped in /ara/incoming/fb/proxygen-master/proxygen/folly/folly
*** Error code 1

Stop.
make: stopped in /ara/incoming/fb/proxygen-master/proxygen/folly/folly

g++49:
./configure LDFLAGS=-L/usr/local/lib LIBS=-lexecinfo CXXFLAGS=-I/usr/local/include CXX=/usr/local/bin/g++49
make

make  all-recursive
Making all in .
depbase=`echo Bits.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`; /bin/sh ./libtool  --tag=CXX    --mode=compile /usr/local/bin/g++49 -DHAVE_CONFIG_H    -I./.. -pthread -I/usr/local/include    -std=gnu++0x -I/usr/local/include -MT Bits.lo -MD -MP -MF $depbase.Tpo -c -o Bits.lo Bits.cpp && mv -f $depbase.Tpo $depbase.Plo
libtool: compile:  /usr/local/bin/g++49 -DHAVE_CONFIG_H -I./.. -pthread -I/usr/local/include -std=gnu++0x -I/usr/local/include -MT Bits.lo -MD -MP -MF .deps/Bits.Tpo -c Bits.cpp  -fPIC -DPIC -o .libs/Bits.o
In file included from /usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr-default.h:35:0,
                 from /usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr.h:148,
                 from /usr/local/lib/gcc49/include/c++/ext/atomicity.h:35,
                 from /usr/local/lib/gcc49/include/c++/bits/ios_base.h:39,
                 from /usr/local/lib/gcc49/include/c++/ios:42,
                 from /usr/local/lib/gcc49/include/c++/istream:38,
                 from /usr/local/lib/gcc49/include/c++/sstream:38,
                 from /usr/local/lib/gcc49/include/c++/complex:45,
                 from /usr/local/include/boost/type_traits/is_complex.hpp:12,
                 from /usr/local/include/boost/type_traits.hpp:49,
                 from ./../folly/Portability.h:229,
                 from ./../folly/Bits.h:65,
                 from Bits.cpp:17:
/usr/include/pthread.h:261:25: error: conflicting declaration of C function 'void sched_yield()'
 void  pthread_yield(void);
                         ^
In file included from ./../folly/Portability.h:39:0,
                 from ./../folly/Bits.h:65,
                 from Bits.cpp:17:
/usr/include/sched.h:242:9: note: previous declaration 'int sched_yield()'
 int     sched_yield(void);
         ^
In file included from /usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr.h:148:0,
                 from /usr/local/lib/gcc49/include/c++/ext/atomicity.h:35,
                 from /usr/local/lib/gcc49/include/c++/bits/ios_base.h:39,
                 from /usr/local/lib/gcc49/include/c++/ios:42,
                 from /usr/local/lib/gcc49/include/c++/istream:38,
                 from /usr/local/lib/gcc49/include/c++/sstream:38,
                 from /usr/local/lib/gcc49/include/c++/complex:45,
                 from /usr/local/include/boost/type_traits/is_complex.hpp:12,
                 from /usr/local/include/boost/type_traits.hpp:49,
                 from ./../folly/Portability.h:229,
                 from ./../folly/Bits.h:65,
                 from Bits.cpp:17:
/usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr-default.h:113:1: error: type of 'sched_yield' is unknown
 __gthrw(sched_yield)
 ^
/usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr-default.h:113:1: error: invalid type in declaration before ';' token
 __gthrw(sched_yield)
 ^
/usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr-default.h: In function 'int __gthread_yield()':
/usr/local/lib/gcc49/include/c++/x86_64-portbld-freebsd10.1/bits/gthr-default.h:692:33: error: '__gthrw_sched_yield' cannot be used as a function
   return __gthrw_(sched_yield) ();
                                 ^
*** Error code 1

Stop.
make[2]: stopped in /ara/incoming/fb/proxygen-master/proxygen/folly/folly
*** Error code 1

Stop.
make[1]: stopped in /ara/incoming/fb/proxygen-master/proxygen/folly/folly
*** Error code 1

Stop.
make: stopped in /ara/incoming/fb/proxygen-master/proxygen/folly/folly
@Orvid
Copy link
Contributor

Orvid commented Jun 30, 2016

configure should be generating the correct flags. I see that you're building Proxygen, is it possible that it isn't generating folly-config.h correctly?

@rayrapetyan
Copy link
Author

I've tried to build master and tags/0.57 in FreeBSD 10.3 - TLDR seems clang compatibility is broken due to GCC-only patches and checks in the folly code and GCC support in turn is broken in FreeBSD (got errors like 'to_string' is not a member of 'std' etc). So things are much worse now.

@Orvid Orvid closed this as completed Oct 12, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants