there is still a compile error for linux torcoind as descibed earlier..
i think it has to do with the leveldb folder wihich is specific for windows and not linux..
( like torcoin-qt.pro has hardlinks like "C:/deps/boost_1_55_0" )
so what needs to be done? other coins with that problem suggest to replace the folder "leveldb" with the folder from another coin.. but is that really a wise idea? torcoin seems to need Berkeley DB 5.3.28.NC, whereas most coins today switched back to Version 4.8 ..
(
https://github.com/TorCoinProject/torcoin/blob/master/doc/build-unix.txt )
hello, I get this error when I try to compile on ubuntu 14.04. could someone help me please?
g++ -O2 -pthread -Wall -Wextra -Wno-ignored-qualifiers -Wformat -Wformat-security -Wno-unused-parameter -g -DBOOST_SPIRIT_THREADSAFE -I/home/x11/torcoin/src -I/home/x11/torcoin/src/obj -I/home/x11/torcoin/src/tor -I/home/x11/torcoin/src/json -DIS_ARCH_64 -DUSE_UPNP=0 -I/home/x11/torcoin/src/leveldb/include -I/home/x11/torcoin/src/leveldb/helpers -DHAVE_BUILD_INFO -fno-stack-protector -fstack-protector-all -Wstack-protector -D_FORTIFY_SOURCE=2 -o torcoind obj/anonymize.o obj/address.o obj/addressmap.o obj/aes.o obj/backtrace.o obj/buffers.o obj/channel.o obj/channeltls.o obj/circpathbias.o obj/circuitbuild.o obj/circuitlist.o obj/circuitmux.o obj/circuitmux_ewma.o obj/circuitstats.o obj/circuituse.o obj/command.o obj/compat.o obj/compat_libevent.o obj/config.o obj/config_codedigest.o obj/confparse.o obj/connection.o obj/connection_edge.o obj/connection_or.o obj/container.o obj/control.o obj/cpuworker.o obj/crypto.o obj/crypto_curve25519.o obj/crypto_format.o obj/curve25519-donna.o obj/di_ops.o obj/directory.o obj/dirserv.o obj/dirvote.o obj/dns.o obj/dnsserv.o obj/entrynodes.o obj/ext_orport.o obj/fp_pair.o obj/geoip.o obj/hibernate.o obj/log.o obj/memarea.o obj/mempool.o obj/microdesc.o obj/networkstatus.o obj/nodelist.o obj/onion.o obj/onion_fast.o obj/onion_main.o obj/onion_ntor.o obj/onion_tap.o obj/policies.o obj/procmon.o obj/reasons.o obj/relay.o obj/rendclient.o obj/rendcommon.o obj/rendmid.o obj/rendservice.o obj/rephist.o obj/replaycache.o obj/router.o obj/routerlist.o obj/routerparse.o obj/routerset.o obj/sandbox.o obj/statefile.o obj/status.o obj/torgzip.o obj/tortls.o obj/tor_util.o obj/transports.o obj/util_codedigest.o obj/json_spirit_reader.o obj/json_spirit_writer.o obj/shavite.o obj/echo.o obj/simd.o obj/blake.o obj/bmw.o obj/cubehash.o obj/luffa.o obj/jh.o obj/keccak.o obj/groestl.o obj/skein.o obj/alert.o obj/version.o obj/checkpoints.o obj/netbase.o obj/addrman.o obj/crypter.o obj/key.o obj/db.o obj/init.o obj/irc.o obj/keystore.o obj/miner.o obj/main.o obj/net.o obj/protocol.o obj/bitcoinrpc.o obj/rpcdump.o obj/rpcnet.o obj/rpcmining.o obj/rpcwallet.o obj/rpcblockchain.o obj/rpcrawtransaction.o obj/rpcsmessage.o obj/script.o obj/sync.o obj/util.o obj/wallet.o obj/walletdb.o obj/noui.o obj/kernel.o obj/pbkdf2.o obj/scrypt.o obj/scrypt-arm.o obj/scrypt-x86.o obj/scrypt-x86_64.o obj/smessage.o obj/stealth.o obj/txdb-leveldb.o -Wl,-z,relro -Wl,-z,now -Wl,-Bdynamic -l boost_system -l boost_filesystem -l boost_program_options -l boost_thread -l db_cxx -l ssl -l crypto -l event -l z -l miniupnpc -Wl,-Bdynamic -l z -l dl -l pthread /home/x11/torcoin/src/leveldb/libleveldb.a /home/x11/torcoin/src/leveldb/libmemenv.a
obj/checkpoints.o: In function `CTxDB::TxnAbort()':
/home/x11/torcoin/src/txdb-leveldb.h:170: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
obj/checkpoints.o: In function `~CTxDB':
/home/x11/torcoin/src/txdb-leveldb.h:37: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
/home/x11/torcoin/src/txdb-leveldb.h:37: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
obj/checkpoints.o: In function `CTxDB::~CTxDB()':
/home/x11/torcoin/src/txdb-leveldb.h:37: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
obj/main.o: In function `~CTxDB':
/home/x11/torcoin/src/txdb-leveldb.h:37: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
obj/main.o:/home/x11/torcoin/src/txdb-leveldb.h:37: more undefined references to `leveldb::WriteBatch::~WriteBatch()' follow
obj/smessage.o: In function `SecMsgDB::Open(char const*)':
/home/x11/torcoin/src/smessage.cpp:217: undefined reference to `leveldb::Options::Options()'
/home/x11/torcoin/src/smessage.cpp:219: undefined reference to `leveldb::DB::Open(leveldb::Options const&, std::string const&, leveldb::DB**)'
/home/x11/torcoin/src/smessage.cpp:223: undefined reference to `leveldb::Status::ToString() const'
obj/smessage.o: In function `SecMsgDB::ScanBatch(CDataStream const&, std::string*, bool*) const':
/home/x11/torcoin/src/smessage.cpp:278: undefined reference to `leveldb::WriteBatch::Iterate(leveldb::WriteBatch::Handler*) const'
/home/x11/torcoin/src/smessage.cpp:281: undefined reference to `leveldb::Status::ToString() const'
obj/smessage.o: In function `~SecMsgBatchScanner':
...
/home/x11/torcoin/src/txdb-leveldb.h:114: undefined reference to `leveldb::WriteBatch::Put(leveldb::Slice const&, leveldb::Slice const&)'
/home/x11/torcoin/src/txdb-leveldb.h:119: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o: In function `bool CTxDB::Write, CDiskBlockIndex>(std::pair const&, CDiskBlockIndex const&)':
/home/x11/torcoin/src/txdb-leveldb.h:114: undefined reference to `leveldb::WriteBatch::Put(leveldb::Slice const&, leveldb::Slice const&)'
/home/x11/torcoin/src/txdb-leveldb.h:119: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o: In function `bool CTxDB::Read, CTxIndex>(std::pair const&, CTxIndex&)':
/home/x11/torcoin/src/txdb-leveldb.h:84: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o: In function `bool CTxDB::Write(std::string const&, uint256 const&)':
/home/x11/torcoin/src/txdb-leveldb.h:114: undefined reference to `leveldb::WriteBatch::Put(leveldb::Slice const&, leveldb::Slice const&)'
/home/x11/torcoin/src/txdb-leveldb.h:119: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o: In function `bool CTxDB::Read(std::string const&, CBigNum&)':
/home/x11/torcoin/src/txdb-leveldb.h:84: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o: In function `bool CTxDB::Write(std::string const&, CBigNum const&)':
/home/x11/torcoin/src/txdb-leveldb.h:114: undefined reference to `leveldb::WriteBatch::Put(leveldb::Slice const&, leveldb::Slice const&)'
/home/x11/torcoin/src/txdb-leveldb.h:119: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o: In function `bool CTxDB::Write, CTxIndex>(std::pair const&, CTxIndex const&)':
/home/x11/torcoin/src/txdb-leveldb.h:114: undefined reference to `leveldb::WriteBatch::Put(leveldb::Slice const&, leveldb::Slice const&)'
/home/x11/torcoin/src/txdb-leveldb.h:119: undefined reference to `leveldb::Status::ToString() const'
obj/txdb-leveldb.o:(.rodata._ZTI13CBatchScanner[_ZTI13CBatchScanner]+0x10): undefined reference to `typeinfo for leveldb::WriteBatch::Handler'
obj/miner.o: In function `~CTxDB':
/home/x11/torcoin/src/txdb-leveldb.h:37: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
/home/x11/torcoin/src/txdb-leveldb.h:37: undefined reference to `leveldb::WriteBatch::~WriteBatch()'
collect2: error: ld returned 1 exit status
make: *** [torcoind] Error 1
To compile the linux version did you follow the directions at the start of the thread, including all the various packages?
to actually compile cd src; make clean; make -f makefile.unix
Linux Compile guide to compile torcoin-qt on Ubuntu 14.04/16.04Run these commands to install the required dependencies in general for compiling torcoind/torcoin-qt:
sudo apt-get install build-essential libtool git autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils libboost-all-dev libminiupnpc-dev libzmq3-dev
Then do this command:
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8 -dev
Then install QT 4 so you can use the command qmake in the next steps:
sudo apt-get install libqt4-dev libprotobuf-dev protobuf-compiler libqrencode-dev
Then clone the github directory of torcoin onto your machine, cd into the folder and use the following commands to build the QT for Linux:
sudo qmake "USE_QRCODE=1" "USE_UPNP=-" torcoin-qt.pro
Then:
sudo make -f Makefile.Release
You may need to remove lines 19 through 34 from the torcoin-qt.pro file since you are building on linux, since currently the windows compiling deps are hardcoded in. [/center]