syndicate-storage / syndicate

Internet-scale software-defined storage system
Apache License 2.0
56 stars 10 forks source link

SCons Build Error #2

Closed muneeb-ali closed 11 years ago

muneeb-ali commented 11 years ago

On planet lab:


princeton_syndicaterg@planetlab-04 syndicate]$ scons libsyndicate scons: Reading SConscript files ...

scons: warning: Ignoring missing SConscript 'build/out/ms/SConscript' File "/home/princeton_syndicaterg/syndicate/SConstruct", line 73, in scons: done reading SConscript files. scons: Building targets ... scons: building associated VariantDir targets: build/out/libsyndicate g++ -o build/out/libsyndicate/libgateway.os -c -fPIC -g -Wall -I. -I/usr/include -I/usr/local/include -Ibuild/out/libsyndicate -Ibuild/out/protobufs build/out/libsyndicate/libgateway.cpp In file included from build/out/libsyndicate/libsyndicate.h:54, from build/out/libsyndicate/libgateway.h:10, from build/out/libsyndicate/libgateway.cpp:8: build/out/libsyndicate/ms-client.h:106:7: warning: no newline at end of file build/out/libsyndicate/libgateway.cpp: In function 'int start_gateway_service(md_syndicateconf, msclient, md_userentry*, char, char, bool)': build/out/libsyndicate/libgateway.cpp:979: error: 'ShutdownProtobufLibrary' is not a member of 'google::protobuf' scons: _\ [build/out/libsyndicate/libgateway.os] Error 1 scons: building terminated because of errors.


jcnelson commented 11 years ago

It works for me. Do you have the protobuf packages installed? You'll need:

protobuf protobuf-compiler protobuf-devel protobuf-python

muneeb-ali commented 11 years ago

@jcnelson Protobuf seem to be installed

Package protobuf-2.0.2-5.fc8.i386 already installed and latest version Nothing to do Package protobuf-devel-2.0.2-5.fc8.i386 already installed and latest version Nothing to do

jcnelson commented 11 years ago

Ah, I see the problem: you're running Fedora 8. You'll need to switch to Fedora 12.

muneeb-ali commented 11 years ago

Thanks, switch to Fedora 12 helped. I'll try to document my experience with building on PlanetLab and add the notes to the repository. Some other errors:


[princeton_syndicaterg@planetlab-03 syndicate]$ scons libsyndicate scons: Reading SConscript files ... scons: done reading SConscript files. scons: Building targets ... scons: building associated VariantDir targets: build/out/libsyndicate g++ -o build/out/libsyndicate/libgateway.os -c -fPIC -g -Wall -I. -I/usr/include -I/usr/local/include -Ibuild/out/libsyndicate -Ibuild/out/protobufs build/out/libsyndicate/libgateway.cpp build/out/libsyndicate/libgateway.cpp: In function 'md_HTTP_response* gateway_GET_handler(md_HTTP_connectiondata)': build/out/libsyndicate/libgateway.cpp:534: error: invalid conversion from 'ssizet ()(void_, uint64t, char, sizet)' to 'int ()(void_, uint64t, char, int)' build/out/libsyndicate/libgateway.cpp:534: error: initializing argument 6 of 'int md_create_HTTP_response_stream(md_HTTPresponse, const char_, int, uint64_t, sizet, int ()(void_, uint64t, char, int), void, void ()(void_))' build/out/libsyndicate/libgateway.cpp: In function 'int gateway_init(mdHTTP, md_syndicateconf, md_user_entry__)': build/out/libsyndicate/libgateway.cpp:716: error: 'MHD_USEPOLL' was not declared in this scope scons: ** [build/out/libsyndicate/libgateway.os] Error 1 scons: building terminated because of errors. [princeton_syndicaterg@planetlab-03 syndicate]$ sudo yum install libmicrohttpd libmicrohttpd-develSetting up Install Process Package libmicrohttpd-0.4.2-2.fc12.i686 already installed and latest version Package libmicrohttpd-devel-0.4.2-2.fc12.i686 already installed and latest version Nothing to do [princeton_syndicaterg@planetlab-03 syndicate]$


libmicrohttpd and libmicrohttpd-devel are installed

jcnelson commented 11 years ago

The libmicrohttpd packages in Fedora 12 are too old (i.e. the interfaces have changed). You'll need to download, build, and install the latest stable version from source. I'll make sure our nightly build process creates a package for us automatically, so this won't be necessary in the future.

muneeb-ali commented 11 years ago

Using libmicrohttpd-0.9.26 resolves this. Closing