Kodi Community Forum

Full Version: xbmc minified as a server?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
VBOX ubuntu 12.10
what i did
(doesnt work)

Code:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install automake autopoint build-essential ccache cmake curl unzip yasm zip zlib1g-dev bison cvs default-jre fp-compiler gawk gdc gettext git-core gperf libasound2-dev libass-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libbluetooth-dev libbluray-dev libbluray1 libboost-dev libboost-thread-dev libbz2-dev libcap-dev libcdio-dev libcurl3 libcurl4-gnutls-dev libcurl4-gnutls-dev libcwiid-dev libcwiid1 libdbus-1-dev libenca-dev libflac-dev libfontconfig-dev libfreetype6-dev libfribidi-dev libglew-dev libiso9660-dev libjasper-dev libjpeg-dev libltdl-dev liblzo2-dev libmad0-dev libmicrohttpd-dev libmodplug-dev libmp3lame-dev libmpeg2-4-dev libmpeg3-dev libmysqlclient-dev libnfs-dev libogg-dev libogg-dev libpcre3-dev libplist-dev libpng-dev libpostproc-dev libsamplerate-dev libsdl-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsmbclient-dev libsqlite3-dev libssh-dev libssl-dev libswscale-dev libtinyxml-dev libtool libudev-dev libusb-dev libva-dev libva-egl1 libva-tpi1 libvdpau-dev libvorbisenc2 libxmu-dev libxrandr-dev libxrender-dev libxslt1-dev libxt-dev libyajl-dev mesa-utils nasm pmount python-dev python-imaging python-sqlite swig libtiff-dev libnfs-dev oracle-java7-installer python-software-properties libtag1-dev

get gotham
Code:
wget https://github.com/xbmc/xbmc/archive/13.0-Gotham_r2.tar.gz
tar -zxvf 13.0-Gotham_r2.tar.gz
mv xbmc* xbmc
cd xbmc

Configure xbmc ( installation in /opt/xbmc-server)

Code:
./bootstrap
./configure  --enable-shared-lib --enable-nfs --disable-debug --disable-vdpau  --disable-vaapi --disable-crystalhd  --disable-vdadecoder  --disable-vtbdecoder  --disable-openmax  --disable-joystick --disable-xrandr  --disable-rsxs  --disable-projectm --disable-rtmp  --disable-airplay --disable-airtunes --disable-dvdcss --disable-optical-drive  --disable-libbluray --disable-libusb  --disable-libcec  --disable-libmp3lame  --disable-libcap --disable-optical-drive --disable-libbluray --disable-ssh --disable-udev --disable-asap-codec --disable-afpclient --disable-goom --disable-avahi --disable-upnp --prefix /opt/xbmc-server

compile
Code:
make -j4
sudo make install

get files
Code:
cd xbmc
wget https://dl.dropboxusercontent.com/u/11291340/make_xbmc-server
wget https://dl.dropboxusercontent.com/u/11291340/xbmc-server.cpp
wget https://dl.dropboxusercontent.com/u/11291340/xbmcVideoLibraryScan.cpp
wget https://dl.dropboxusercontent.com/u/11291340/make_xbmcVideoLibraryScan

Now build binaries and install them

Code:
Code:
make -f make_xbmcVideoLibraryScan all
make -f make_xbmc-server all
sudo cp xbmc-server xbmcVideoLibraryScan /opt/xbmc-server/lib/xbmc/

Final touch !

Make libxbmc.so system wide

Code:
Code:
sudo sh -c "echo '/opt/xbmc-server_13-beta1/lib/xbmc' > /etc/ld.so.conf.d/xbmc-server.conf"
sudo ldconfig

and create a symlink in order to call binaries without path

Code:
Code:
sudo ln -s /opt/xbmc-server_13-beta1/lib/xbmc/xbmc-server /usr/local/bin/xbmc-server
sudo ln -s /opt/xbmc-server_13-beta1/lib/xbmc/xbmcVideoLibraryScan /usr/local/bin/xbmcVideoLibraryScan

Enjoy !
You can call xbmc-server or xbmcVideoLibraryScan for anywhere Smile
Why you choose alpha 11?

Won't work with gotham final release as they use different MySQL db versions (see wiki)

I'll give this a go with final tonight all the same...
just thought. because celdhrim's tut on page 38 was 2 month ago an he reverted some stuff and i wasnt able to revert cause there were to many changes since.

now testing with gotham_r2
change if works
Cool rc2 should be good it's video db version 78 same as release..,

Alpha 12 onwards ls v78 so should be ok

Cheers
compiles "make"
"make -f make_xbmcVideoLibraryScan all" gives error

now trying Gotham_beta^1
ERROR
maybe som1 has a clue
Code:
make -f make_xbmcVideoLibraryScan all

CPP     xbmc/xbmcVideoLibraryScan.o
/usr/bin/ccache gcc -O2  -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 -o xbmcVideoLibraryScan xbmcVideoLibraryScan.o AppParamParser.o XbmcContext.o -lxbmc -lstdc++ -L..
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CAdvancedSettings>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI17CAdvancedSettingsE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI17CAdvancedSettingsE11getInstanceEv]+0xd2): undefined reference to `CAdvancedSettings::CAdvancedSettings()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplication>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI12CApplicationE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI12CApplicationE11getInstanceEv]+0xd2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplicationMessenger>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI21CApplicationMessengerE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI21CApplicationMessengerE11getInstanceEv]+0xd2): undefined reference to `CApplicationMessenger::CApplicationMessenger()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplication>::getQuick()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI12CApplicationE8getQuickEv[_ZN8xbmcutil16GlobalsSingletonI12CApplicationE8getQuickEv]+0x4a): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.o: In function `main':
xbmcVideoLibraryScan.cpp:(.text.startup+0x68): undefined reference to `CLog::SetLogLevel(int)'
xbmcVideoLibraryScan.cpp:(.text.startup+0xc9): undefined reference to `CAdvancedSettings::Initialize()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x118): undefined reference to `CAdvancedSettings::Initialize()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x166): undefined reference to `CFileItemList::~CFileItemList()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1bd): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1d3): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1d9): undefined reference to `g_infoManager'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1eb): undefined reference to `CGUIInfoManager::GetVersion()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x280): undefined reference to `CApplication::StartVideoScan(CStdStr<char> const&, bool)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2a5): undefined reference to `XbmcThreads::SystemClockMillis()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2e4): undefined reference to `CApplication::IsVideoScanning() const'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2f1): undefined reference to `CApplicationMessenger::Get()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2f9): undefined reference to `CApplicationMessenger::Quit()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x315): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x333): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x348): undefined reference to `CXBApplicationEx::Destroy()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x44c): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x465): undefined reference to `XbmcThreads::SystemClockMillis()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x483): undefined reference to `Sleep(unsigned int)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4a2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4c2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4e8): undefined reference to `CFileItemList::~CFileItemList()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CLog::CLogGlobals>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonIN4CLog11CLogGlobalsEE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonIN4CLog11CLogGlobalsEE11getInstanceEv]+0x100): undefined reference to `XbmcThreads::pthreads::RecursiveMutex::getRecursiveAttr()'
AppParamParser.o: In function `CAppParamParser::CAppParamParser()':
AppParamParser.cpp:(.text+0x21): undefined reference to `CFileItemList::CFileItemList()'
AppParamParser.o: In function `CAppParamParser::DisplayVersion()':
AppParamParser.cpp:(.text+0x63): undefined reference to `g_infoManager'
AppParamParser.cpp:(.text+0x6c): undefined reference to `CGUIInfoManager::GetVersion()'
AppParamParser.o: In function `CAppParamParser::EnableDebugMode()':
AppParamParser.cpp:(.text+0x221): undefined reference to `CLog::SetLogLevel(int)'
AppParamParser.o: In function `CAppParamParser::ParseArg(CStdStr<char> const&)':
AppParamParser.cpp:(.text+0x38c): undefined reference to `CApplication::SetStandAlone(bool)'
AppParamParser.cpp:(.text+0x4b6): undefined reference to `CFileItem::CFileItem(CStdStr<char> const&)'
AppParamParser.cpp:(.text+0x54c): undefined reference to `CFileItemList::Add(boost::shared_ptr<CFileItem> const&)'
AppParamParser.cpp:(.text+0x5aa): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x5c7): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x646): undefined reference to `CAdvancedSettings::AddSettingsFile(CStdStr<char> const&)'
AppParamParser.cpp:(.text+0x6a2): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x6d9): undefined reference to `CApplication::CApplication()'
AppParamParser.o: In function `CAppParamParser::PlayPlaylist()':
AppParamParser.cpp:(.text+0x82d): undefined reference to `CFileItemList::Size() const'
AppParamParser.cpp:(.text+0x83b): undefined reference to `g_playlistPlayer'
AppParamParser.cpp:(.text+0x84b): undefined reference to `PLAYLIST::CPlayListPlayer::Add(int, CFileItemList&)'
AppParamParser.cpp:(.text+0x85b): undefined reference to `PLAYLIST::CPlayListPlayer::SetCurrentPlaylist(int)'
AppParamParser.cpp:(.text+0x88c): undefined reference to `CApplicationMessenger::Get()'
AppParamParser.cpp:(.text+0x8a0): undefined reference to `CApplicationMessenger::SendMessage(ThreadMessage&, bool)'
AppParamParser.o: In function `CAppParamParser::Parse(char const**, int)':
AppParamParser.cpp:(.text+0xbb8): undefined reference to `g_RemoteControl'
AppParamParser.cpp:(.text+0xbc8): undefined reference to `CRemoteControl::setUsed(bool)'
AppParamParser.cpp:(.text+0xdc9): undefined reference to `Sleep(unsigned int)'
AppParamParser.cpp:(.text+0xe86): undefined reference to `g_RemoteControl'
AppParamParser.cpp:(.text+0xe96): undefined reference to `CRemoteControl::setDeviceName(CStdStr<char> const&)'
XbmcContext.o: In function `XBMC::Context::Context()':
XbmcContext.cpp:(.text+0xd8): undefined reference to `XbmcCommons::Exception::logger'
XbmcContext.cpp:(.text+0xea): undefined reference to `CThread::logger'
XbmcContext.o: In function `XbmcUtils::LogImplementation::log(int, char const*)':
XbmcContext.cpp:(.text._ZN9XbmcUtils17LogImplementation3logEiPKc[_ZN9XbmcUtils17LogImplementation3logEiPKc]+0x29): undefined reference to `CLog::Log(int, char const*, ...)'
collect2: error: ld returned 1 exit status
make: *** [xbmcVideoLibraryScan] Error 1
ubuntu@ubuntu-VirtualBox:~/xbmc/xbmc$ sudo chmod 755 make_xbmc-server
ubuntu@ubuntu-VirtualBox:~/xbmc/xbmc$ sudo chmod 755 make_xbmcVideoLibraryScan
ubuntu@ubuntu-VirtualBox:~/xbmc/xbmc$ sudo chmod 755 xbmcVideoLibraryScan.cpp
ubuntu@ubuntu-VirtualBox:~/xbmc/xbmc$ sudo chmod 755 xbmc-server.cpp
ubuntu@ubuntu-VirtualBox:~/xbmc/xbmc$ make -f make_xbmcVideoLibraryScan all
/usr/bin/ccache gcc -O2  -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 -o xbmcVideoLibraryScan xbmcVideoLibraryScan.o AppParamParser.o XbmcContext.o -lxbmc -lstdc++ -L..
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CAdvancedSettings>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI17CAdvancedSettingsE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI17CAdvancedSettingsE11getInstanceEv]+0xd2): undefined reference to `CAdvancedSettings::CAdvancedSettings()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplication>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI12CApplicationE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI12CApplicationE11getInstanceEv]+0xd2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplicationMessenger>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI21CApplicationMessengerE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI21CApplicationMessengerE11getInstanceEv]+0xd2): undefined reference to `CApplicationMessenger::CApplicationMessenger()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplication>::getQuick()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI12CApplicationE8getQuickEv[_ZN8xbmcutil16GlobalsSingletonI12CApplicationE8getQuickEv]+0x4a): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.o: In function `main':
xbmcVideoLibraryScan.cpp:(.text.startup+0x68): undefined reference to `CLog::SetLogLevel(int)'
xbmcVideoLibraryScan.cpp:(.text.startup+0xc9): undefined reference to `CAdvancedSettings::Initialize()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x118): undefined reference to `CAdvancedSettings::Initialize()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x166): undefined reference to `CFileItemList::~CFileItemList()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1bd): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1d3): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1d9): undefined reference to `g_infoManager'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1eb): undefined reference to `CGUIInfoManager::GetVersion()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x280): undefined reference to `CApplication::StartVideoScan(CStdStr<char> const&, bool)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2a5): undefined reference to `XbmcThreads::SystemClockMillis()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2e4): undefined reference to `CApplication::IsVideoScanning() const'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2f1): undefined reference to `CApplicationMessenger::Get()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2f9): undefined reference to `CApplicationMessenger::Quit()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x315): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x333): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x348): undefined reference to `CXBApplicationEx::Destroy()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x44c): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x465): undefined reference to `XbmcThreads::SystemClockMillis()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x483): undefined reference to `Sleep(unsigned int)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4a2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4c2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4e8): undefined reference to `CFileItemList::~CFileItemList()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CLog::CLogGlobals>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonIN4CLog11CLogGlobalsEE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonIN4CLog11CLogGlobalsEE11getInstanceEv]+0x100): undefined reference to `XbmcThreads::pthreads::RecursiveMutex::getRecursiveAttr()'
AppParamParser.o: In function `CAppParamParser::CAppParamParser()':
AppParamParser.cpp:(.text+0x21): undefined reference to `CFileItemList::CFileItemList()'
AppParamParser.o: In function `CAppParamParser::DisplayVersion()':
AppParamParser.cpp:(.text+0x63): undefined reference to `g_infoManager'
AppParamParser.cpp:(.text+0x6c): undefined reference to `CGUIInfoManager::GetVersion()'
AppParamParser.o: In function `CAppParamParser::EnableDebugMode()':
AppParamParser.cpp:(.text+0x221): undefined reference to `CLog::SetLogLevel(int)'
AppParamParser.o: In function `CAppParamParser::ParseArg(CStdStr<char> const&)':
AppParamParser.cpp:(.text+0x38c): undefined reference to `CApplication::SetStandAlone(bool)'
AppParamParser.cpp:(.text+0x4b6): undefined reference to `CFileItem::CFileItem(CStdStr<char> const&)'
AppParamParser.cpp:(.text+0x54c): undefined reference to `CFileItemList::Add(boost::shared_ptr<CFileItem> const&)'
AppParamParser.cpp:(.text+0x5aa): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x5c7): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x646): undefined reference to `CAdvancedSettings::AddSettingsFile(CStdStr<char> const&)'
AppParamParser.cpp:(.text+0x6a2): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x6d9): undefined reference to `CApplication::CApplication()'
AppParamParser.o: In function `CAppParamParser::PlayPlaylist()':
AppParamParser.cpp:(.text+0x82d): undefined reference to `CFileItemList::Size() const'
AppParamParser.cpp:(.text+0x83b): undefined reference to `g_playlistPlayer'
AppParamParser.cpp:(.text+0x84b): undefined reference to `PLAYLIST::CPlayListPlayer::Add(int, CFileItemList&)'
AppParamParser.cpp:(.text+0x85b): undefined reference to `PLAYLIST::CPlayListPlayer::SetCurrentPlaylist(int)'
AppParamParser.cpp:(.text+0x88c): undefined reference to `CApplicationMessenger::Get()'
AppParamParser.cpp:(.text+0x8a0): undefined reference to `CApplicationMessenger::SendMessage(ThreadMessage&, bool)'
AppParamParser.o: In function `CAppParamParser::Parse(char const**, int)':
AppParamParser.cpp:(.text+0xbb8): undefined reference to `g_RemoteControl'
AppParamParser.cpp:(.text+0xbc8): undefined reference to `CRemoteControl::setUsed(bool)'
AppParamParser.cpp:(.text+0xdc9): undefined reference to `Sleep(unsigned int)'
AppParamParser.cpp:(.text+0xe86): undefined reference to `g_RemoteControl'
AppParamParser.cpp:(.text+0xe96): undefined reference to `CRemoteControl::setDeviceName(CStdStr<char> const&)'
XbmcContext.o: In function `XBMC::Context::Context()':
XbmcContext.cpp:(.text+0xd8): undefined reference to `XbmcCommons::Exception::logger'
XbmcContext.cpp:(.text+0xea): undefined reference to `CThread::logger'
XbmcContext.o: In function `XbmcUtils::LogImplementation::log(int, char const*)':
XbmcContext.cpp:(.text._ZN9XbmcUtils17LogImplementation3logEiPKc[_ZN9XbmcUtils17LogImplementation3logEiPKc]+0x29): undefined reference to `CLog::Log(int, char const*, ...)'
collect2: error: ld returned 1 exit status
make: *** [xbmcVideoLibraryScan] Error 1
ubuntu@ubuntu-VirtualBox:~/xbmc/xbmc$ sudo make -f make_xbmcVideoLibraryScan all
/usr/bin/ccache gcc -O2  -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 -o xbmcVideoLibraryScan xbmcVideoLibraryScan.o AppParamParser.o XbmcContext.o -lxbmc -lstdc++ -L..
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CAdvancedSettings>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI17CAdvancedSettingsE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI17CAdvancedSettingsE11getInstanceEv]+0xd2): undefined reference to `CAdvancedSettings::CAdvancedSettings()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplication>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI12CApplicationE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI12CApplicationE11getInstanceEv]+0xd2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplicationMessenger>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI21CApplicationMessengerE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonI21CApplicationMessengerE11getInstanceEv]+0xd2): undefined reference to `CApplicationMessenger::CApplicationMessenger()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CApplication>::getQuick()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonI12CApplicationE8getQuickEv[_ZN8xbmcutil16GlobalsSingletonI12CApplicationE8getQuickEv]+0x4a): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.o: In function `main':
xbmcVideoLibraryScan.cpp:(.text.startup+0x68): undefined reference to `CLog::SetLogLevel(int)'
xbmcVideoLibraryScan.cpp:(.text.startup+0xc9): undefined reference to `CAdvancedSettings::Initialize()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x118): undefined reference to `CAdvancedSettings::Initialize()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x166): undefined reference to `CFileItemList::~CFileItemList()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1bd): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1d3): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1d9): undefined reference to `g_infoManager'
xbmcVideoLibraryScan.cpp:(.text.startup+0x1eb): undefined reference to `CGUIInfoManager::GetVersion()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x280): undefined reference to `CApplication::StartVideoScan(CStdStr<char> const&, bool)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2a5): undefined reference to `XbmcThreads::SystemClockMillis()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2e4): undefined reference to `CApplication::IsVideoScanning() const'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2f1): undefined reference to `CApplicationMessenger::Get()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x2f9): undefined reference to `CApplicationMessenger::Quit()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x315): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x333): undefined reference to `CLog::Log(int, char const*, ...)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x348): undefined reference to `CXBApplicationEx::Destroy()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x44c): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x465): undefined reference to `XbmcThreads::SystemClockMillis()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x483): undefined reference to `Sleep(unsigned int)'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4a2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4c2): undefined reference to `CApplication::CApplication()'
xbmcVideoLibraryScan.cpp:(.text.startup+0x4e8): undefined reference to `CFileItemList::~CFileItemList()'
xbmcVideoLibraryScan.o: In function `xbmcutil::GlobalsSingleton<CLog::CLogGlobals>::getInstance()':
xbmcVideoLibraryScan.cpp:(.text._ZN8xbmcutil16GlobalsSingletonIN4CLog11CLogGlobalsEE11getInstanceEv[_ZN8xbmcutil16GlobalsSingletonIN4CLog11CLogGlobalsEE11getInstanceEv]+0x100): undefined reference to `XbmcThreads::pthreads::RecursiveMutex::getRecursiveAttr()'
AppParamParser.o: In function `CAppParamParser::CAppParamParser()':
AppParamParser.cpp:(.text+0x21): undefined reference to `CFileItemList::CFileItemList()'
AppParamParser.o: In function `CAppParamParser::DisplayVersion()':
AppParamParser.cpp:(.text+0x63): undefined reference to `g_infoManager'
AppParamParser.cpp:(.text+0x6c): undefined reference to `CGUIInfoManager::GetVersion()'
AppParamParser.o: In function `CAppParamParser::EnableDebugMode()':
AppParamParser.cpp:(.text+0x221): undefined reference to `CLog::SetLogLevel(int)'
AppParamParser.o: In function `CAppParamParser::ParseArg(CStdStr<char> const&)':
AppParamParser.cpp:(.text+0x38c): undefined reference to `CApplication::SetStandAlone(bool)'
AppParamParser.cpp:(.text+0x4b6): undefined reference to `CFileItem::CFileItem(CStdStr<char> const&)'
AppParamParser.cpp:(.text+0x54c): undefined reference to `CFileItemList::Add(boost::shared_ptr<CFileItem> const&)'
AppParamParser.cpp:(.text+0x5aa): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x5c7): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x646): undefined reference to `CAdvancedSettings::AddSettingsFile(CStdStr<char> const&)'
AppParamParser.cpp:(.text+0x6a2): undefined reference to `CApplication::CApplication()'
AppParamParser.cpp:(.text+0x6d9): undefined reference to `CApplication::CApplication()'
AppParamParser.o: In function `CAppParamParser::PlayPlaylist()':
AppParamParser.cpp:(.text+0x82d): undefined reference to `CFileItemList::Size() const'
AppParamParser.cpp:(.text+0x83b): undefined reference to `g_playlistPlayer'
AppParamParser.cpp:(.text+0x84b): undefined reference to `PLAYLIST::CPlayListPlayer::Add(int, CFileItemList&)'
AppParamParser.cpp:(.text+0x85b): undefined reference to `PLAYLIST::CPlayListPlayer::SetCurrentPlaylist(int)'
AppParamParser.cpp:(.text+0x88c): undefined reference to `CApplicationMessenger::Get()'
AppParamParser.cpp:(.text+0x8a0): undefined reference to `CApplicationMessenger::SendMessage(ThreadMessage&, bool)'
AppParamParser.o: In function `CAppParamParser::Parse(char const**, int)':
AppParamParser.cpp:(.text+0xbb8): undefined reference to `g_RemoteControl'
AppParamParser.cpp:(.text+0xbc8): undefined reference to `CRemoteControl::setUsed(bool)'
AppParamParser.cpp:(.text+0xdc9): undefined reference to `Sleep(unsigned int)'
AppParamParser.cpp:(.text+0xe86): undefined reference to `g_RemoteControl'
AppParamParser.cpp:(.text+0xe96): undefined reference to `CRemoteControl::setDeviceName(CStdStr<char> const&)'
XbmcContext.o: In function `XBMC::Context::Context()':
XbmcContext.cpp:(.text+0xd8): undefined reference to `XbmcCommons::Exception::logger'
XbmcContext.cpp:(.text+0xea): undefined reference to `CThread::logger'
XbmcContext.o: In function `XbmcUtils::LogImplementation::log(int, char const*)':
XbmcContext.cpp:(.text._ZN9XbmcUtils17LogImplementation3logEiPKc[_ZN9XbmcUtils17LogImplementation3logEiPKc]+0x29): undefined reference to `CLog::Log(int, char const*, ...)'
collect2: error: ld returned 1 exit status
make: *** [xbmcVideoLibraryScan] Error 1
Yea I get same/similar with final release, and ~7k libxbmc.so Sad
Hi,
just wanted to share my patches with you guys. They apply against 13.0-Gotham from github.com.
Clone the xbmc github repo and apply the patches:

Code:
git checkout 13.0-Gotham
wget https://gist.github.com/docmeth02/bcd2378e632d4d10ce69/raw/xbmc-server.patch
git checkout -b local
git apply xbmc-server.patch

After that just configure, build and install the xbmc shared lib.
I built mine like this:
Code:
./configure --enable-shared-lib --disable-debug --disable-vdpau --disable-vaapi --disable-crystalhd --disable-vtbdecoder --disable-vtbdecoder --disable-openmax --disable-joystick --disable-xrandr --disable-rsxs --disable-projectm --disable-rtmp --disable-airplay --disable-airtunes --disable-dvdcss --disable-optical-drive --disable-libbluray --disable-libusb --disable-libcec --disable-libmp3lame --disable-libcap --disable-pulse --disable-alsa
make
make install
cp libxbmc.so /lib/libxbmc.so
ldconfig
cd xbmc
make -f make_xbmc-server all
make -f make_xbmcVideoLibraryScan all
cp ./xbmc-server /usr/local/bin/
cp ./xbmcVideoLibraryScan /usr/local/bin/
And you're good to go!

Also make sure to export the necessary env variables for xbmc:
Code:
XBMC_BIN_HOME=/usr/local/lib/xbmc
XBMC_HOME=/usr/local/share/xbmc
awesome. that did it!
This has worked perfectly. Thanks so much docmeth02
(2014-05-08, 10:45)docmeth02 Wrote: [ -> ]Hi,
just wanted to share my patches with you guys. They apply against 13.0-Gotham from github.com.
Clone the xbmc github repo and apply the patches:

Code:
git checkout 13.0-Gotham
wget https://gist.github.com/docmeth02/bcd2378e632d4d10ce69/raw/xbmc-server.patch
git checkout -b local
git apply xbmc-server.patch

After that just configure, build and install the xbmc shared lib.
I built mine like this:
Code:
./configure --enable-shared-lib --disable-debug --disable-vdpau --disable-vaapi --disable-crystalhd --disable-vtbdecoder --disable-vtbdecoder --disable-openmax --disable-joystick --disable-xrandr --disable-rsxs --disable-projectm --disable-rtmp --disable-airplay --disable-airtunes --disable-dvdcss --disable-optical-drive --disable-libbluray --disable-libusb --disable-libcec --disable-libmp3lame --disable-libcap --disable-pulse --disable-alsa
make
make install
cp libxbmc.so /lib/libxbmc.so
ldconfig
cd xbmc
make -f make_xbmc-server all
make -f make_xbmcVideoLibraryScan all
cp ./xbmc-server /usr/local/bin/
cp ./xbmcVideoLibraryScan /usr/local/bin/
And you're good to go!

Also make sure to export the necessary env variables for xbmc:
Code:
XBMC_BIN_HOME=/usr/local/lib/xbmc
XBMC_HOME=/usr/local/share/xbmc

Hope this works Smile Trying it now Big Grin , Have some rep regardless.

EDIT: so far so good Smile
Image

EDIT: does any 1 have the service init.d script file? the link https://dl.dropboxusercontent.com/u/2098...bmc-server is dead!
Code:
#! /bin/sh
### BEGIN INIT INFO
# Provides:          xbmc
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts instance of XBMC
# Description:       starts instance of XBMC using start-stop-daemon and xinit
### END INIT INFO

DAEMON=/opt/xbmc-server/xbmc-server
DAEMON_OPTS=" --no-test --nolirc -p"

# script name
NAME=xbmc

# app name
DESC=XBMC

# user
RUN_AS=root

# Path of the PID file
PID_FILE=/var/run/xbmc.pid

set -e
#set -xv

case "$1" in
  start)
        echo "Starting $DESC"
        start-stop-daemon --start -c $RUN_AS --background --pidfile $PID_FILE  --make-pidfile --exec $DAEMON -- $DAEMON_OPTS
        ;;

  stop)
        echo "Stopping $DESC"
        start-stop-daemon --stop --pidfile $PID_FILE
        ;;

  restart|force-reload)
        echo "Restarting $DESC"
        start-stop-daemon --stop --pidfile $PID_FILE
        sleep 5
        start-stop-daemon --start -c $RUN_AS --background --pidfile $PID_FILE  --make-pidfile --exec $DAEMON -- $DAEMON_OPTS
        ;;
        
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;

esac
exit 0
(2014-05-08, 15:41)quixers Wrote: [ -> ]Here http://bootlegninja.awardspace.com/xbmc-server/
Thanks i just found that Smile needed some editing to get it how i wanted it but everything working now great work guys Smile

(2014-05-08, 15:42)gutz-pilz Wrote: [ -> ]
Code:
#! /bin/sh
### BEGIN INIT INFO
# Provides:          xbmc
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts instance of XBMC
# Description:       starts instance of XBMC using start-stop-daemon and xinit
### END INIT INFO

DAEMON=/opt/xbmc-server/xbmc-server
DAEMON_OPTS=" --no-test --nolirc -p"

# script name
NAME=xbmc

# app name
DESC=XBMC

# user
RUN_AS=root

# Path of the PID file
PID_FILE=/var/run/xbmc.pid

set -e
#set -xv

case "$1" in
  start)
        echo "Starting $DESC"
        start-stop-daemon --start -c $RUN_AS --background --pidfile $PID_FILE  --make-pidfile --exec $DAEMON -- $DAEMON_OPTS
        ;;

  stop)
        echo "Stopping $DESC"
        start-stop-daemon --stop --pidfile $PID_FILE
        ;;

  restart|force-reload)
        echo "Restarting $DESC"
        start-stop-daemon --stop --pidfile $PID_FILE
        sleep 5
        start-stop-daemon --start -c $RUN_AS --background --pidfile $PID_FILE  --make-pidfile --exec $DAEMON -- $DAEMON_OPTS
        ;;
        
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;

esac
exit 0

Thanks, i just edited the above file to match pretty much that Smile
I tried to consolidate all the information in this thread, Hope this helps the newbies Smile

http://cyanlabs.co.uk/tutorials/guide-he...-for-linux

All credits at the bottom of the post.