Sector/Sphere is an open source software suite for high-performance distributed data storage and processing. It can be broadly compared to Google's GFS/MapReduce stack. Sector is a distributed file system targeting data storage over a large number of commodity computers. Sphere is the programming framework that supports massive in-storage parallel data processing for data stored in Sector. Additionally, Sector/Sphere is unique in its ability to operate in a wide area network (WAN) setting.Today, we will take a look into another big data technology, sector/sphere Let's download the source here.
user@localhost:~/Desktop$ tar -xf sector.2.8.tar
user@localhost:~/Desktop$ cd sector/
user@localhost:~/Desktop/sector$ ls
total 116K
-rw-r--r-- 1 user user 5.5K Feb 3 2012 rpm.spec
-rw-r--r-- 1 user user 2.2K Feb 3 2012 release_note.txt
-rw-r--r-- 1 user user 509 Feb 3 2012 NOTICE.txt
-rw-r--r-- 1 user user 506 Feb 3 2012 Makefile.common
-rw-r--r-- 1 user user 279 Feb 3 2012 Makefile
-rw-r--r-- 1 user user 286 Feb 3 2012 README.txt
-rw-r--r-- 1 user user 12K Feb 3 2012 LICENSE.txt
-rw-r--r-- 1 user user 0 Feb 3 2012 sector.dev.log
-rw-r--r-- 1 user user 6.4K Feb 3 2012 README.stable_branch.txt
-rw-r--r-- 1 user user 7.3K Feb 3 2012 LOG
drwxr-xr-x 2 user user 4.0K Feb 3 2012 client
drwxr-xr-x 2 user user 4.0K Feb 3 2012 common
drwxr-xr-x 4 user user 4.0K Feb 3 2012 doc
drwxr-xr-x 3 user user 4.0K Feb 3 2012 examples
drwxr-xr-x 4 user user 4.0K Feb 3 2012 fuse
drwxr-xr-x 2 user user 4.0K Feb 3 2012 gmp
drwxr-xr-x 2 user user 4.0K Feb 3 2012 include
drwxr-xr-x 2 user user 4.0K Feb 3 2012 lib
drwxr-xr-x 2 user user 4.0K Feb 3 2012 master
drwxr-xr-x 2 user user 4.0K Feb 3 2012 security
drwxr-xr-x 3 user user 4.0K Feb 3 2012 slave
drwxr-xr-x 2 user user 4.0K Feb 3 2012 test
drwxr-xr-x 2 user user 4.0K Feb 3 2012 tools
drwxr-xr-x 2 user user 4.0K Feb 3 2012 udt
drwxr-xr-x 3 user user 4.0K Feb 3 2012 conf
user@localhost:~/Desktop/sector$ find .
.
./client
./client/fscache_unittest.cpp
./client/fscache_unittest
./client/fscache.cpp
./client/clientmgmt.cpp
./client/client.h
./client/config_unittest.cpp
./client/client.cpp
./client/Makefile
./client/client_conf.cpp
./client/dbclient.h
./client/fscache.h
./client/dcclient.cpp
./client/dcclient.h
./client/clientmgmt.h
./client/fsclient.cpp
./client/client.cpp.orig
./client/fsclient.h
./release_note.txt
./tools
./tools/fsck.cpp
./tools/mv.cpp
./tools/cp.cpp
./tools/download.cpp
./tools/sysinfo.cpp
./tools/pipe.cpp
./tools/stat.cpp
./tools/shutdown.cpp
./tools/probot.h
./tools/mkdir.cpp
./tools/upload.cpp
./tools/replicate.cpp
./tools/probot.cpp
./tools/stream.cpp
./tools/Makefile
./tools/ls.cpp
./tools/rm.cpp
./LOG
./Makefile.common
./slave
./slave/start_slave.cpp
./slave/serv_db.cpp
./slave/sphere
./slave/sphere/streamhash.cpp
./slave/sphere/.svn
./slave/sphere/.svn/entries
./slave/sphere/.svn/tmp
./slave/sphere/.svn/tmp/prop-base
./slave/sphere/.svn/tmp/props
./slave/sphere/.svn/tmp/text-base
./slave/sphere/.svn/prop-base
./slave/sphere/.svn/props
./slave/sphere/.svn/text-base
./slave/sphere/.svn/text-base/streamhash.cpp.svn-base
./slave/sphere/.svn/text-base/Makefile.svn-base
./slave/sphere/.svn/all-wcprops
./slave/sphere/.svn/format
./slave/sphere/Makefile
./slave/config_unittest.cpp
./slave/serv_file.cpp
./slave/Makefile
./slave/serv_spe.cpp
./slave/slave.cpp
./slave/slave_conf.cpp
./slave/slave.h
./conf
./conf/topology.conf
./conf/client.conf
./conf/users
./conf/users/root
./conf/users/.svn
./conf/users/.svn/entries
./conf/users/.svn/tmp
./conf/users/.svn/tmp/prop-base
./conf/users/.svn/tmp/props
./conf/users/.svn/tmp/text-base
./conf/users/.svn/prop-base
./conf/users/.svn/props
./conf/users/.svn/text-base
./conf/users/.svn/text-base/root.svn-base
./conf/users/.svn/text-base/test.svn-base
./conf/users/.svn/text-base/anonymous.svn-base
./conf/users/.svn/all-wcprops
./conf/users/.svn/format
./conf/users/anonymous
./conf/users/test
./conf/slave.conf
./conf/slaves.list
./conf/replica.conf
./conf/masters.list
./conf/master_acl.conf
./conf/master.conf
./conf/slave_acl.conf
./fuse
./fuse/test2
./fuse/fusedircache.cpp
./fuse/sector-fuse.cpp
./fuse/fusedircache.h
./fuse/result
./fuse/sectorfs.h
./fuse/Makefile
./fuse/sectorfs.cpp
./fuse/test
./rpm.spec
./NOTICE.txt
./lib
./sector.dev.log
./LICENSE.txt
./common
./common/ssltransport.cpp
./common/dhash.cpp
./common/transaction.cpp
./common/conf_unittest.cpp
./common/sfopt.cpp
./common/tcptransport.h
./common/conf.cpp
./common/snode.cpp
./common/topology.h
./common/writelog_unittest.cpp
./common/log.cpp
./common/writelog.cpp
./common/osportable.cpp
./common/stat.cpp
./common/ssltransport.h
./common/strconcat.h
./common/datachn.cpp
./common/replica_conf.h
./common/dhash.h
./common/tcptransport.cpp
./common/topology_unittest.cpp
./common/conf.h
./common/transport.h
./common/threadpool.cpp
./common/udttransport.cpp
./common/stat.h
./common/log.h
./common/sphere.cpp
./common/localfs.h
./common/crypto_unittest.cpp
./common/writelog.h
./common/topology.cpp
./common/index.cpp
./common/format.h
./common/meta.cpp
./common/replica_conf.cpp
./common/Makefile
./common/meta.h
./common/routing.cpp
./common/index.h
./common/constant.cpp
./common/crypto.h
./common/transaction.h
./common/routing.h
./common/crypto_unittest
./common/message.h
./common/udttransport.h
./common/index_unittest.cpp
./common/transaction_unittest.cpp
./common/test
./common/memobj.cpp
./common/datachn.h
./common/crypto.cpp
./common/message.cpp
./common/threadpool.h
./master
./master/start_master.cpp
./master/user.h
./master/start_all.cpp
./master/master.h
./master/config_unittest
./master/master_conf.cpp
./master/master.cpp
./master/replica.h
./master/slavemgmt.h
./master/replica_unittest.cpp
./master/Makefile.orig
./master/replica.cpp
./master/config_unittest.cpp
./master/Makefile
./master/replica_unittest
./master/user.cpp
./master/slavemgmt_unittest.cpp
./master/slavemgmt.cpp
./master/stop_all.cpp
./master/res.save
./udt
./udt/cache.h
./udt/epoll.cpp
./udt/buffer.h
./udt/md5.cpp
./udt/md5.h
./udt/api.cpp
./udt/ccc.cpp
./udt/channel.cpp
./udt/packet.cpp
./udt/udt.h
./udt/packet.h
./udt/queue.h
./udt/cache.cpp
./udt/channel.h
./udt/list.h
./udt/window.h
./udt/window.cpp
./udt/Makefile
./udt/ccc.h
./udt/common.cpp
./udt/queue.cpp
./udt/list.cpp
./udt/api.h
./udt/core.h
./udt/common.h
./udt/buffer.cpp
./udt/core.cpp
./udt/epoll.h
./Makefile
./README.txt
./security
./security/security.h
./security/filesrc.h
./security/security.cpp
./security/sserver.cpp
./security/filesrc.cpp
./security/Makefile
./security/filesrc_unittest.cpp
./security/ssl_cert_gen.cpp
./doc
./doc/hlp
./doc/hlp/ix_endm.gif
./doc/hlp/ix_open.gif
./doc/hlp/ix_endp.gif
./doc/hlp/ix_end.gif
./doc/hlp/ix_listm.gif
./doc/hlp/ix_listp.gif
./doc/hlp/ix_list.gif
./doc/hlp/ix_link.gif
./doc/hlp/ix_up.gif
./doc/hlp/ix_down.gif
./doc/hlp/ix_leaf.gif
./doc/hlp/ix_space.gif
./doc/hlp/ix_book.gif
./doc/hlp/ix_line.gif
./doc/main.htm
./doc/doc
./doc/doc/r-c-client-rmr.htm
./doc/doc/r-c-client-createsf.htm
./doc/doc/r-c-sphereprocess-checkreduceprogress.htm
./doc/doc/t-make.htm
./doc/doc/r-c-sphereprocess-run_mr.htm
./doc/doc/r-c-sinput.htm
./doc/doc/t-config-client.htm
./doc/doc/r-c-sectorfile-upload.htm
./doc/doc/g-dfs.htm
./doc/doc/header.htm
./doc/doc/r-c-sectorfile.htm
./doc/doc/r-c-client-remove.htm
./doc/doc/r-c-client-releasesp.htm
./doc/doc/r-c-client-shutdown.htm
./doc/doc/intro.htm
./doc/doc/t-ec2.htm
./doc/doc/r-c-client-mkdir.htm
./doc/doc/r-c-sphereprocess-read.htm
./doc/doc/guide.htm
./doc/doc/r-c-client-createsp.htm
./doc/doc/installation.htm
./doc/doc/t-config-fuse.htm
./doc/doc/r-c-address.htm
./doc/doc/t-config-slave.htm
./doc/doc/r-c-sectorfile-download.htm
./doc/doc/r-c-sectorfile-close.htm
./doc/doc/r-c-client-move.htm
./doc/doc/r-t-shutdown.htm
./doc/doc/r-c-sectorfile-write.htm
./doc/doc/r-c-sphereprocess-setminunitsize.htm
./doc/doc/r-c-spherestream-init.htm
./doc/doc/r-c-sphereprocess-checkmapprogress.htm
./doc/doc/r-c-sfile.htm
./doc/doc/r-t-stream.htm
./doc/doc/r-c-sectorfile-seekg.htm
./doc/doc/r-c-soutput-resizeresbuf.htm
./doc/doc/g-psphere.htm
./doc/doc/r-t-stat.htm
./doc/doc/r-t-rm.htm
./doc/doc/r-c-spherestream.htm
./doc/doc/r-c-sphereprocess-setdatamoveattr.htm
./doc/doc/r-c-client.htm
./doc/doc/treeview.css
./doc/doc/r-c-snode.htm
./doc/doc/t-cert.htm
./doc/doc/t-password.htm
./doc/doc/r-c-client-stat.htm
./doc/doc/reference.htm
./doc/doc/r-c-sphereprocess-run.htm
./doc/doc/r-c-client-sysinfo.htm
./doc/doc/r-c-sphereprocess-checkprogress.htm
./doc/doc/images
./doc/doc/images/g-spe_clip_image002.gif
./doc/doc/images/g-spe_clip_image005.gif
./doc/doc/images/.svn
./doc/doc/images/.svn/entries
./doc/doc/images/.svn/tmp
./doc/doc/images/.svn/tmp/prop-base
./doc/doc/images/.svn/tmp/props
./doc/doc/images/.svn/tmp/text-base
./doc/doc/images/.svn/prop-base
./doc/doc/images/.svn/prop-base/sector-arch.jpg.svn-base
./doc/doc/images/.svn/prop-base/g-spe_clip_image002.gif.svn-base
./doc/doc/images/.svn/prop-base/g-spe_clip_image005.gif.svn-base
./doc/doc/images/.svn/props
./doc/doc/images/.svn/text-base
./doc/doc/images/.svn/text-base/sector-arch.jpg.svn-base
./doc/doc/images/.svn/text-base/g-spe_clip_image002.gif.svn-base
./doc/doc/images/.svn/text-base/g-spe_clip_image005.gif.svn-base
./doc/doc/images/.svn/all-wcprops
./doc/doc/images/.svn/format
./doc/doc/images/sector-arch.jpg
./doc/doc/r-c-sectorfile-flush.htm
./doc/doc/r-c-sectorfile-read.htm
./doc/doc/r-c-sectorfile-utime.htm
./doc/doc/r-c-sphereprocess-loadoperator.htm
./doc/doc/r-c-client-list.htm
./doc/doc/r-t-ls.htm
./doc/doc/r-c-sectorfile-seekp.htm
./doc/doc/r-c-sphereprocess-setprocnumpernode.htm
./doc/doc/g-psector.htm
./doc/doc/r-c-client-releasesf.htm
./doc/doc/r-t-upload.htm
./doc/doc/r-t-sysinfo.htm
./doc/doc/g-mr.htm
./doc/doc/copy.htm
./doc/doc/r-c-sectorfile-tellp.htm
./doc/doc/r-c-sysstat.htm
./doc/doc/ecode.htm
./doc/doc/r-tools.htm
./doc/doc/t-config-master.htm
./doc/doc/r-c-client-close.htm
./doc/doc/r-c-sectorfile-eof.htm
./doc/doc/r-t-download.htm
./doc/doc/t-advanced.htm
./doc/doc/r-c-sphereprocess-close.htm
./doc/doc/r-c-client-login.htm
./doc/doc/r-t-mkdir.htm
./doc/doc/r-c-sectorfile-tellg.htm
./doc/doc/r-c-soutput-resizeidxbuf.htm
./doc/doc/r-c-sphereprocess-waitforcompletion.htm
./doc/doc/footer.htm
./doc/doc/r-c-sphereprocess.htm
./doc/doc/r-c-sphereprocess-setmaxunitsize.htm
./doc/doc/g-cdn.htm
./doc/doc/r-c-client-logout.htm
./doc/doc/r-c-sphereresult.htm
./doc/doc/g-spe.htm
./doc/doc/r-classes.htm
./doc/doc/r-c-sectorfile-open.htm
./doc/doc/g-udf.htm
./doc/doc/r-t-cp.htm
./doc/doc/sectordoc.css
./doc/doc/r-c-soutput.htm
./doc/doc/r-t-mv.htm
./doc/doc/r-c-client-init.htm
./doc/doc/r-c-spherestream-setoutputpath.htm
./doc/doc/t-config-security.htm
./doc/index.htm
./include
./include/osportable.h
./include/sector.h
./include/sphere.h
./test
./test/test-framework.sh
./test/testfile.cpp
./test/nohup.out
./test/send_dbg_cmd.cpp
./test/stress.cpp
./test/iotest.cpp
./test/Makefile
./test/sanity.sh
./test/recovery.sh
./examples
./examples/README
./examples/wordcount.cpp
./examples/testdc.cpp
./examples/mrword.cpp
./examples/testfs.cpp
./examples/text.idx.cpp
./examples/Makefile
./examples/mrsort.cpp
./examples/funcs
./examples/funcs/sorthash.cpp
./examples/funcs/mr_word.cpp
./examples/funcs/wordbucket.cpp
./examples/funcs/mr_sort.cpp
./examples/funcs/sort.cpp
./examples/funcs/Makefile
./examples/funcs/gen_idx.cpp
./examples/funcs/randwriter.cpp
./README.stable_branch.txt
./gmp
./gmp/gmp.cpp
./gmp/prec.h
./gmp/gmp.vcproj
./gmp/gmp.h
./gmp/Makefile
./gmp/prec.cpp
./gmp/message.h
./gmp/message.cpp
As you can read above, we downloaded sector 2.8 and extract it. The content consists of the client, tools, slave, conf, fuse, common, master, udt, security, doc, test, gmp and example components.
For the compiling instruction, the documentation where I refer to can be found here.
$ make
make[1]: Entering directory '/home/user/Desktop/sector/udt'
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX md5.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX common.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX window.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX list.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX buffer.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX packet.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX channel.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX queue.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX core.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX cache.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX epoll.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX api.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra -D IA32 -D LINUX ccc.cpp -c
g++ -shared -o libudt.so md5.o common.o window.o list.o buffer.o packet.o channel.o queue.o core.o cache.o epoll.o api.o ccc.o -lstdc++ -lpthread -lssl -lcrypto -L. -L../lib
/usr/bin/ld: cannot find -lssl
/usr/bin/ld: cannot find -lcrypto
collect2: error: ld returned 1 exit status
Makefile:25: recipe for target 'libudt.so' failed
make[1]: *** [libudt.so] Error 1
make[1]: Leaving directory '/home/user/Desktop/sector/udt'
Makefile:5: recipe for target 'subdirs' failed
make: *** [subdirs] Error 2
user@localhost:~/Desktop/sector$
oppsss.... looks like ssl library never get install in my system.
user@localhost:~/Desktop/sector$ sudo apt-get install libssl-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
gstreamer0.10-nice gstreamer1.0-clutter libappstream-glib7 libasm3-java libcamel-1.2-52 libdbusmenu-qt5-2 libebook-contacts-1.2-1 libecal-1.2-18 libedata-cal-1.2-27 libedataserver-1.2-20
libept1.4.16 libfarstream-0.1-0 libgegl-0.2-0 libgsf-1-114 libgsf-1-common libgsoap7 libisl13 libkf5bookmarks-data libkf5bookmarks5 libkf5kiofilewidgets5 libkf5notifications-data
libkf5notifications5 libkf5solid5 libkf5solid5-data libphonon4qt5-4 librarian0 libraw10 libruby2.1 libvncserver1 libvte-2.90-9 libvte-2.90-common libx264-146:i386 libx265-59
libx265-59:i386 linux-image-4.1.0-2-amd64 phonon4qt5 phonon4qt5-backend-vlc python-dbus-dev python-zeitgeist rarian-compat vlc-plugin-samba
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
libssl-doc
The following NEW packages will be installed:
libssl-dev libssl-doc
0 upgraded, 2 newly installed, 0 to remove and 287 not upgraded.
Need to get 2,788 kB of archives.
After this operation, 10.3 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://ftp.us.debian.org/debian testing/main amd64 libssl-dev amd64 1.0.2f-2 [1,538 kB]
Get:2 http://ftp.us.debian.org/debian testing/main amd64 libssl-doc all 1.0.2f-2 [1,250 kB]
Fetched 2,788 kB in 8s (312 kB/s)
Selecting previously unselected package libssl-dev:amd64.
(Reading database ... 224709 files and directories currently installed.)
Preparing to unpack .../libssl-dev_1.0.2f-2_amd64.deb ...
Unpacking libssl-dev:amd64 (1.0.2f-2) ...
Selecting previously unselected package libssl-doc.
Preparing to unpack .../libssl-doc_1.0.2f-2_all.deb ...
Unpacking libssl-doc (1.0.2f-2) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up libssl-dev:amd64 (1.0.2f-2) ...
Setting up libssl-doc (1.0.2f-2) ...
Let's compile it again.
user@localhost:~/Desktop/sector$ make
make[1]: Entering directory '/home/user/Desktop/sector/udt'
g++ -shared -o libudt.so md5.o common.o window.o list.o buffer.o packet.o channel.o queue.o core.o cache.o epoll.o api.o ccc.o -lstdc++ -lpthread -lssl -lcrypto -L. -L../lib
ar -rcs libudt.a md5.o common.o window.o list.o buffer.o packet.o channel.o queue.o core.o cache.o epoll.o api.o ccc.o
make[1]: Leaving directory '/home/user/Desktop/sector/udt'
make[1]: Entering directory '/home/user/Desktop/sector/udt'
mv libudt.so libudt.a ../lib
make[1]: Leaving directory '/home/user/Desktop/sector/udt'
make[1]: Entering directory '/home/user/Desktop/sector/common'
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra osportable.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra conf.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra sfopt.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra snode.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra meta.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra index.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra memobj.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra transaction.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra topology.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra log.cpp -c
log.cpp: In member function ‘void logger::LogAggregate::setLogLevel(logger::LogLevel)’:
log.cpp:404:24: warning: variable ‘newLogger’ set but not used [-Wunused-but-set-variable]
log_mapped_value_t newLogger;
^
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra sphere.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra constant.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra crypto.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra dhash.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra routing.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra udttransport.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra ssltransport.cpp -c
g++ -fPIC -DMULTITHREADED_LOGGER -I. -I../include -I../udt -g -DDEBUG -Wall -Wextra tcptransport.cpp -c
tcptransport.cpp: In member function ‘virtual int sector::TCPTransport::close()’:
tcptransport.cpp:157:11: error: ‘::close’ has not been declared
return ::close(m_iSocket);
^
tcptransport.cpp:157:11: note: suggested alternative:
In file included from ../include/sector.h:31:0,
from tcptransport.cpp:33:
../udt/udt.h:310:13: note: ‘UDT::close’
UDT_API int close(UDTSOCKET u);
^
Makefile:30: recipe for target 'tcptransport.o' failed
make[1]: *** [tcptransport.o] Error 1
make[1]: Leaving directory '/home/user/Desktop/sector/common'
Makefile:5: recipe for target 'subdirs' failed
make: *** [subdirs] Error 2
It's a bit pity as compilation failed and that definitely a blocker for new people to pick up this great software. If you develop or know cpp, please leave a message in the comment how to make this compilation works. Otherwise, if you want to know more on this software, this is another useful link.