phantomxdev / phantomx

10 stars 10 forks source link

I can't compile in Arch Linux #6

Closed yoburtu closed 6 years ago

yoburtu commented 6 years ago

Hi,

I can't compile phantomx in Arch Linux. I have configured OpenSSL 1.0 environment vars.

$ export OPENSSL_INCLUDE_PATH=/usr/include/openssl-1.0 $ export OPENSSL_LIB_PATH=/usr/lib/openssl-1.0

$ make -f makefile.unix /bin/sh ../share/genbuild.sh obj/build.h g++ -c -O2 -pthread -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter -g -DBOOST_SPIRIT_THREADSAFE -I/home/user/Crypto/pnx/phantomx/src -I/home/user/Crypto/pnx/phantomx/src/obj -I/usr/include/openssl-1.0 -DUSE_UPNP=0 -DENABLE_WALLET -I/home/user/Crypto/pnx/phantomx/src/leveldb/include -I/home/user/Crypto/pnx/phantomx/src/leveldb/helpers -DHAVE_BUILD_INFO -fno-stack-protector -fstack-protector-all -Wstack-protector -D_FORTIFY_SOURCE=2 -MMD -MF obj/net.d -o obj/net.o net.cpp net.cpp: In function ‘void ThreadMapPort()’: net.cpp:997:68: error: invalid conversion from ‘int’ to ‘unsigned char’ [-fpermissive] devlist = upnpDiscover(2000, multicastif, minissdpdpath, 0, 0, &error); ^~ net.cpp:997:74: error: too few arguments to function ‘UPNPDev upnpDiscover(int, const char, const char, int, int, unsigned char, int)’ devlist = upnpDiscover(2000, multicastif, minissdpdpath, 0, 0, &error); ^ In file included from net.cpp:22:0: /usr/include/miniupnpc/miniupnpc.h:62:1: note: declared here upnpDiscover(int delay, const char multicastif, ^~~~ In file included from util.h:16:0, from stealth.h:8, from walletdb.h:10, from wallet.h:8, from init.h:8, from net.cpp:6: tinyformat.h: In static member function ‘static const char tinyformat::detail::FormatIterator::streamStateFromFormat(std::ostream&, unsigned int&, const char, int, int)’: tinyformat.h:785:21: warning: this statement may fall through [-Wimplicit-fallthrough=] out.setf(std::ios::uppercase);


tinyformat.h:786:9: note: here
         case 'x': case 'p':
         ^~~~
tinyformat.h:791:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
             out.setf(std::ios::uppercase);
             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
tinyformat.h:792:9: note: here
         case 'e':
         ^~~~
tinyformat.h:797:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
             out.setf(std::ios::uppercase);
             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
tinyformat.h:798:9: note: here
         case 'f':
         ^~~~
tinyformat.h:802:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
             out.setf(std::ios::uppercase);
             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
tinyformat.h:803:9: note: here
         case 'g':
         ^~~~
make: *** [makefile.unix:217: obj/net.o] Error 1
yoburtu commented 6 years ago

How can I solve this?. Thanks.

yoburtu commented 6 years ago

I exec make without UPNP and I have progressed, but now I have this errors:

$ make -f makefile.unix USE_UPNP= /bin/sh ../share/genbuild.sh obj/build.h g++ -c -O2 -pthread -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter -g -DBOOST_SPIRIT_THREADSAFE -I/home/user/Crypto/pnx/phantomx/src -I/home/user/Crypto/pnx/phantomx/src/obj -I/usr/include/openssl-1.0 -DENABLE_WALLET -I/home/user/Crypto/pnx/phantomx/src/leveldb/include -I/home/user/Crypto/pnx/phantomx/src/leveldb/helpers -DHAVE_BUILD_INFO -fno-stack-protector -fstack-protector-all -Wstack-protector -D_FORTIFY_SOURCE=2 -MMD -MF obj/rpcclient.d -o obj/rpcclient.o rpcclient.cpp rpcclient.cpp: In function ‘json_spirit::Object CallRPC(const string&, const Array&)’: rpcclient.cpp:44:58: error: no matching function for call to ‘boost::asio::ssl::context::context(boost::asio::io_service&, boost::asio::ssl::context_base::method)’ ssl::context context(io_service, ssl::context::sslv23); ^ In file included from /usr/include/boost/asio/ssl/context.hpp:757:0, from /usr/include/boost/asio/ssl.hpp:18, from rpcprotocol.h:18, from rpcclient.cpp:9: /usr/include/boost/asio/ssl/impl/context.ipp:326:1: note: candidate: boost::asio::ssl::context::context(boost::asio::ssl::context&&) context::context(context&& other) ^~~ /usr/include/boost/asio/ssl/impl/context.ipp:326:1: note: candidate expects 1 argument, 2 provided /usr/include/boost/asio/ssl/impl/context.ipp:63:1: note: candidate: boost::asio::ssl::context::context(boost::asio::ssl::context_base::method) context::context(context::method m) ^~~ /usr/include/boost/asio/ssl/impl/context.ipp:63:1: note: candidate expects 1 argument, 2 provided In file included from util.h:16:0, from rpcclient.cpp:10: tinyformat.h: In static member function ‘static const char tinyformat::detail::FormatIterator::streamStateFromFormat(std::ostream&, unsigned int&, const char, int, int)’: tinyformat.h:785:21: warning: this statement may fall through [-Wimplicit-fallthrough=] out.setf(std::ios::uppercase);


tinyformat.h:786:9: note: here
         case 'x': case 'p':
         ^~~~
tinyformat.h:791:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
             out.setf(std::ios::uppercase);
             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
tinyformat.h:792:9: note: here
         case 'e':
         ^~~~
tinyformat.h:797:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
             out.setf(std::ios::uppercase);
             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
tinyformat.h:798:9: note: here
         case 'f':
         ^~~~
tinyformat.h:802:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
             out.setf(std::ios::uppercase);
             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
tinyformat.h:803:9: note: here
         case 'g':
         ^~~~
make: *** [makefile.unix:217: obj/rpcclient.o] Error 1
phantomx-beta commented 6 years ago

Try our new guide on Readme.md and autoinstall script

Tested environments:

Ubuntu 16.04 Debian Raspbian (Raspberry Pi 3)