Need help compiling on Fedora 19

Asked by John Smith

Hello,

I need some help compiling the ADCH source code on Fedora 19 32-bit. I installed all of the software that I thought was required with:

yum install swig ruby python scons gcc-c++ libstdc++-devel readline-devel openssl-devel

Then I ran scons, but I keep getting a series of errors that seem to be type related. I feel like I am really close to getting this to work, but I am missing some library. If anyone has any experience in installing on Fedora, I would really appreciate it. Or if anyone has a link to a guide or something.

This is the output that I get when I try to run scons:

[root@localhost adchpp_2.11.0_source]# scons
scons: Reading SConscript files ...
Checking for C header file poll.h... (cached) yes
Checking for C header file sys/epoll.h... (cached) yes
Checking for pthread_create() in C library pthread... (cached) yes
Checking for SSL_connect() in C library ssl... (cached) yes
Checking for dlopen() in C library dl... (cached) yes
Copy("/adchpp_2.11.0_source/build/debug-default/bin/lua", "lua")
scons: *** /adchpp_2.11.0_source/build/debug-default/bin/lua: File exists
mkmf.rb can't find header files for ruby at /usr/share/include/ruby.h
Ruby libdir not found, skipping ruby module
Python.h not found, not building python extension
scons: done reading SConscript files.
scons: Building targets ...
Linking build/debug-default/bin/luadchppbloom.so (shared)
build/debug-default/swig/bloom_wrap.os: In function `BloomManager_hasTTH':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:1750: undefined reference to `BloomManager::hasTTH(adchpp::Entity&, HashValue<adchpp::TigerHash> const&) const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_BloomManager_hasBloom':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:1858: undefined reference to `BloomManager::hasBloom(adchpp::Entity&) const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_BloomManager_getSearches':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:1888: undefined reference to `BloomManager::getSearches() const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_BloomManager_getTTHSearches':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:1920: undefined reference to `BloomManager::getTTHSearches() const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_BloomManager_getStoppedSearches':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:1952: undefined reference to `BloomManager::getStoppedSearches() const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_TBloomManagerPtr_hasBloom':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:2111: undefined reference to `BloomManager::hasBloom(adchpp::Entity&) const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_TBloomManagerPtr_getSearches':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:2141: undefined reference to `BloomManager::getSearches() const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_TBloomManagerPtr_getTTHSearches':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:2173: undefined reference to `BloomManager::getTTHSearches() const'
build/debug-default/swig/bloom_wrap.os: In function `_wrap_TBloomManagerPtr_getStoppedSearches':
/adchpp_2.11.0_source/build/debug-default/swig/bloom_wrap.cc:2205: undefined reference to `BloomManager::getStoppedSearches() const'
build/debug-default/swig/bloom_wrap.os: In function `std::shared_ptr<BloomManager> std::dynamic_pointer_cast<BloomManager, adchpp::Plugin>(std::shared_ptr<adchpp::Plugin> const&)':
/usr/include/c++/4.8.1/bits/shared_ptr.h:449: undefined reference to `typeinfo for BloomManager'
collect2: error: ld returned 1 exit status
# collect2 0.07 0.00
scons: *** [build/debug-default/bin/luadchppbloom.so] Error 1
scons: building terminated because of errors.

Thanks in advance.

Question information

Language:
English Edit question
Status:
Solved
For:
ADCH++ Edit question
Assignee:
No assignee Edit question
Solved by:
John Smith
Solved:
Last query:
Last reply:
Revision history for this message
poy (poy) said :
#1

can you show the errors?

i regularly build ADCH++ on CentOS, which should be close to Fedora. i think you should have all the necessary components with that yum command.

Revision history for this message
John Smith (redarmymarshal) said :
#2

I added the errors, sorry for not having them in there originally, I was not on the same computer when I posted about the problem (long story + busy day). Also, it seems as though this particular issue was brought up as bug 1017928 and marked invalid which suggests that its not a bug, but rather a fixable issue/support request... this gives me hope that someone has the aswer XD

Revision history for this message
John Smith (redarmymarshal) said :
#3

Notably, I can totally run CentOS as a solution to this problem instead, I have this computer for the sole purpose of running ADCH++ so I don't mind if I have to use CentOS as long as someone is willing to help me out since I've never really used it before.

Revision history for this message
poy (poy) said :
#4

this is an error when linking the newly introduced bloom-lua interface. it can be fixed by generalizing the solution at swig/SConscript:144 (linking to Bloom explicitly), currently only for Windows, to Linux as well. however, klondike had reservations about doing it (i forgot the specifics) so this will need his input. subscribed him to this thread.

unrelated - you may also run "yum install python-devel ruby-devel" to fix the following lines:
Ruby libdir not found, skipping ruby module
Python.h not found, not building python extension

although i'm not aware of any active py/rb script right now, you will have the interfaces ready should any useful script pop up.

Revision history for this message
John Smith (redarmymarshal) said :
#5

Thanks! I actually managed to get it to run by finding a different thread with a similar issue where you said to compile with: "scons mode=release arch=x64" and that worked quite well. Thanks for the suggestion with python and ruby devel. It seems to turn on, and I think I have all of the settings configured, but I cannot access it from my local network. I am going to try later when I no longer have it behind a router, but if I have issues would it be possible for me to message you about them? (specifically I think it might be firewall related and I don't have a lot of experience with that)

Revision history for this message
poy (poy) said :
#6

good to hear!

for more general questions like firewall/router config, i suggest <http://www.dcbase.org/forums/> or the dcdev hub at <adcs://hub.dcbase.org:16591>. only ADCH++ devs receive messages here and i'm not sure they would care enough to answer on these topics. ;) (i know i wouldn't. :P)