ubuntu 12.04

Asked by JPZ on 2012-06-11

Good morning, and great thanks for your project.
Did you plan to build an ubuntu 12.04 python client version ?

Sincerely.
JPZ

Question information

Language:
English Edit question
Status:
Answered
For:
Xibo Edit question
Assignee:
No assignee Edit question
Last query:
2012-06-13
Last reply:
2014-01-30

Yes, however the Berkelium library doesn't currently build on Ubuntu 12.04 so we won't be able to release it until that has been sorted out.

Alex

JPZ (jean-philippe-zimmer) said : #2

Hi Alex,
I built the berkelium project, and it appears that it built principally chromium.
I can't see where I can find the source code to make liblibberkelium.so and libberkeliumwrapper.so
Sincerely.
JPZ

You managed to build it on 12.04?

Is that the chromium11 branch that you managed to get building? Because that's the one we need.
Looking at their git commit log it looks like maybe they worked out those issues in the last few days so that's good news.

Well you next need to build libavg 1.7 and libbrowsernode.

Libavg 1.7 source can be got from their website. libbrowsernode source is here:

https://code.launchpad.net/~browsernode-team/browsernode/trunk

You need to copy the browsernode source in to the libavg tree before building in the test plugins folder, as well as copy the berkelium library header files over. That's all documented in the wiki from the last time I did it, but as it's never been tried I've no idea if it will work or not:

http://wiki.xibo.org.uk/wiki/Libbrowsernode_Build_Instructions

Best wishes

Alex

JPZ (jean-philippe-zimmer) said : #4

Hi Alex,
No they didn't change and I had the same problem as you.
I resolved it by changing the includes in the ui/base/l10n/l10n_util.cc file :

#if defined(TOOLKIT_USES_GTK)
//#include <glib/gutils.h>
#include <glib.h>
#endif

Great thanks for your responses.
Sincerely.
JPZ

Okay but it still used to fail after that with a different error so I suspect there have been some changes.

I've left a test box building it again today and I'll have a look later.

Alex

As you might have seen on the Berkelium mailing list, while Chromium now builds, Berkelium itself won't link on 12.04. Waiting for a patch for that.

JPZ (jean-philippe-zimmer) said : #7

Hello Alex,
Effectively, there are many problems.
The first is to build berkelium. They used very old version of libjpeg_turbo. With a new version, I succeded to build it.
The second is to build libbrowsernode. The documentation does not work anymore. The makefile.am is not take account.
So I tried to do a Makefile but there are a lot of link problems.

So I tried to used the .net client with mono and I succeded to build and run it under linux.
It's not evident to do and I have not completely finished the tests.

Sincerely.
JPZ

We'd be really interested to see the result of your work.

Best wishes

Alex

JPZ (jean-philippe-zimmer) said : #9

Hello Alex,
I made ​​some progress about the work : I had not try to connect the XiboClient to a server, now it's done and I summarize you the various stages.
- the client report an error of the server about the version, so I installed the new version 3 of the server. (if there is no display registered, the display menu does not appear).
- the client is successfully detected by the server, and the client is well registred in the server.
- unfortunetly, the html codes sent to the client are not interpreted
1 - for a first test, I used a VM with Mint 13 32bits. I had got a client error because the lib gluezilla was not available. I tried to install it (with also xulrunner) without success.
2- so I tested a VM with debian squeeze. The debian packages libgluezilla and xulrunner were indeed present in the repositories. I tested with them. But in this case the html code (for a base example given by the server) is not interpreted and one reads only the html code.
For the moment, I did not find why gluezilla has not the desired behavior despite lot of researches. Perhaps you will have better ideas than me.
So I tried to use an other browser lib under mono, and I find webkit :
http://huseyincakir.wordpress.com/2010/01/22/mono-webbrowser-with-webkit-gtk-not-winforms/
The example works well but now I had no time to embed it in the Xiboclient.

You will probably more ideas than me to improve all that. I can send you this first work, just tell me how you want to receive it.

Sincerely.
JPZ

Eng Chong Meng (engcm) said : #10

Hi JPZ & Alex,

[Running on Ubuntu Precise 12.04 64-bit with option "cmake . -DCMAKE_BUILD_TYPE=Release"]

After the changes: #include <glib.h>

You need to do the following:
$sudo apt-get install binutils-gold

The "binutils-gold" is required to compile chromium (11.0.696.77) successfully. Then you need to download the following deb package:

cxxtest_3.10.1-0ubuntu1~dhart1_all.deb from from the following site and install it.
https://launchpad.net/~dhart/+archive/ppa/+files/cxxtest_3.10.1-0ubuntu1~dhart1_all.deb
Then copy the file "cxxtestgen.py" into "berkelium/externals/cxxtest/cxxtestgen.py"

You need to copy resources.pak, libffmpegsumo.so, chrome.pak and berkelium to /usr/bin before doing the following. Otherwise the system will complain llibberkelium not found.

 touch a.cpp
 g++ -c a.cpp -o a.o
 g++ a.o -shared -llibberkelium -o libberkeliumwrapper.so

But still having problem building the libavg and not sure how to genenerate "libbrowsernode.so"
So when running the latest svn code pyclient; received exception error when the xiboClient.py executes the following statement:

self.player.loadPlugin("libbrowsernode")
and give the following errors.
--------------------------------------------------
Logging will be handled by: XiboLogXmds
Switching to new logger

*********************************************************
The version of Berkelium installed on this system is not compatible with this version of Xibo2.
Please check you have the correct version of Berkelium installed for this version of the client.
*********************************************************

Eng Chong Meng (engcm) said : #11

For the libavg,

After copy the browsernode source in to the libavg/src/test/plugin and copy the Berkelium header files into libavg/src/test/plugin/berkelium

Under the plugin directory there already exits a Makefile.am for ColorNode. So I merge both the file content but omit any duplication. I then peform the following steps:

$ cd libavg
$ ./configure
$ make
$ sudo make install

The system is able to compile without error and the compiled files are also properly bing install into the directory
/usr/local/lib/python2.7/dist-packages/libavg
Everything seems working so far.

But then when I execute the pyclient ./run.sh, I received the error as mentioned before.
I saw there is a file libbrowsernode.so in the python directory, I presume I also need to update this, but do not where to get this file. Any help?

Hi

Sorry for the delay in replying.

The libbrowsernode.so file needs to be copied from the libavg install directory to the folder with the client.

If that works, would you be willing to share your binaries?

Alex

Eng Chong Meng (engcm) said : #13

Although I am able to compile and create all the files required, but still facing problem when I execute XiboClient.py. The system reports the following error. (I have commented out the try: /except: to get the actual problem)

 File "/opt/xibo/pyclient/XiboClient.py", line 4165, in run
    self.player.loadPlugin("libbrowsernode")
RuntimeError: /usr/local/lib/python2.7/dist-packages/libavg/plugin/libbrowsernode.so: undefined symbol: _ZN9Berkelium6Window7destroyEv

If I run ldd -r libbrowsernode.so, more undefined symbols are being reported.

But strange is that the xibo version that runs on Ubuntu 10.04 (32-bit), also reports a similar undefined symbols, but it runs without poblems reported.

Do you still wants my compiled binary files? If so, how can I send to you.

Thanks for trying.

I don't know what that error means or how to fix it.

Given the binaries you have don't work I can't distribute them so I won't need copies - thank you.

Cheers

Alex

Ganesh Waghmode (ganesh-w27) said : #15

Hi,

I am trying to build libbrowsernode on Ubuntu 12.04 as well as Ubuntu 10.04. On both I am able to build and install berkelium. Then I copied resources.pak, libffmpegsumo.so, chrome.pak and berkelium to /usr/bin. Then I copied BerkeliumDelegate.cpp, BerkeliumDelegate.h, BrowserNode.cpp, BrowserNode.p to libavg plugin folder. then I modified my MakeFile.am file to following:

INCLUDES = -I. -I../player \
  @XML2_CFLAGS@ @PTHREAD_CFLAGS@ @PANGOFT2_CFLAGS@ @PYTHON_INCLUDES@ @DC1394_2_CFLAGS@

ALL_H =

if APPLE
    XGL_LIBS =
    EXTRA_LDFLAGS=-read_only_relocs suppress
else
    XGL_LIBS = -lXxf86vm
    EXTRA_LDFLAGS=-XCClinker ../../wrapper/.libs/avg.so
endif

ALL_GL_LIBS = @GL_LIBS@ @SDL_LIBS@ $(XGL_LIBS)

pkgpyexec_LTLIBRARIES = colorplugin.la libbrowsernode.la
colorplugin_la_SOURCES = ColorNode.cpp
colorplugin_la_LDFLAGS = $(EXTRA_LDFLAGS) -module

libbrowsernode_la_SOURCES = BrowserNode.cpp BerkeliumDelegate.cpp
libbrowsernode_la_LDFLAGS = $(EXTRA_LDFLAGS) -module -lberkeliumwrapper

And now while building libavg (Version 1.7.1) I am getting following Error on both OSes:
/usr/bin/ld: cannot find -lberkeliumwrapper
collect2: ld returned 1 exit status

So, anybody knows what would be the problem?

Hi,

From Libbrowsernode_Build_Instructions,

Copy the browsernode release files in to src/test/plugin folder.

I am not clear with what are browser node release files. Are they those files under "berkelium/build/chromium/src/out/Releases" after building of https://github.com/sirikata/berkelium?

Should I copy the whole folder into plugin as "libavg/src/test/plugin/Releases" or only copay files into "libavg/src/test/plugin/Releases"?

I compiled but didn't find any libbrowsernod.so coming out.

Thanks in advance.

Theyre the files from the browsernode repository you downloaded earlier - plus the berkelium header files.

Alex

Thank you Alex,
Now I successfully build libbrowsernod.so on previous version of ubuntu following your instruction.
But I copied the whole built berkelium folder (1.8G) to /libavg/src/test/plugin to compile that.

Or will only *.hpp files are needed from berkelium? Do I need to keep their tree structure?

You just need to copy the include folder in as you did previously. It's only a few files. There's no structure other than the single containing folder as mentioned in the notes.

This doesn't build on 12.04 properly - well OK it builds but it doesn't work. Lots of people have tried so unless you're able to make changes to the Chromium source code and fix it then it's unlikely there's a magic fix in here.

I'm building libavg 1.7.1 with Berkelium 11 right now ready for 1.4.0 release for Ubuntu 10.04.4.

Alex

To be clear, in libavg/src/test/plugin/berkelium folder you need just the contents of berkelium/include

That's from memory as I haven't got that far yet. You definitely don't need to copy the whole tree in there as all the dependancies are already installed from your "sudo make install" in the Berkelium build.

Alex

Eng Chong Meng (engcm) said : #21

Hi Alex,

Attached is the consolidated User Manual based on Xibo version 1.4.0.

Hope it is useful to you.

Regards,

CM Eng

Hi CM Eng

Apologies for the slow reply on this.

Im afraid Launchpad Answers doesnt support attachments, but if you would kindly email your manual to <email address hidden> I'd be very interested to see it.

Best wishes

Alex

P.B. (philippe-bost) said : #23

Hi all.
Any news ?

How could we could we help now ?

Berkelium still doesn't support it.

If you have the skills they're developing a new version to work with newer versions of Chrome. You could contribute to that.

Then libbrowsernode will need to be updated to work with the new Berkelium

P.B. (philippe-bost) said : #25

God, it will going to take an eternal time :(
I'll see how can i find someone able to do that

P.B. (philippe-bost) said : #26

Ok, I made some investigations with some guyz from different Universities and other developpement infrastructures and conclusions are the same each time : finding out those libs problem will take a dev team for too much time so I have the choise btw finding out another rendering method or changing linux signage solutions.
I've always been sure that this Berkelium issue would be a really serious problem for the project, but I did not figure it will happen so soon for me.
Even if the server side work anounced very cool stuff, running Windows clients because I have to is not so not an option for me that I think I will beginning some others investigations :(

Eng Chong Meng (engcm) said : #27

1. XIBO CLIENT INSTALLATION - UBUNTU
This section provides the complete procedure to perform the library build from source code for: berkelium, libbrowsernode & libavg. The method described in the following section is based on Linux Ubuntu 12.10 (64-bit). The whole process has been tested working as 26 June 2013.

1.1 Xibo Python Client Installation & Library Source Build
1.1.1 Xibo Python Client Libraries Build - Overview
Please refer to the respectively sections for more detailed instructions on the specific module build from source.
• Install the following packages using Synaptic Package Manager, the tools and versions may vary depending on your initial system development environment setup. Additional tools may be required to be installed as requested during each build process:
    git-core gyp cmake libvdpau-dev libxmu-dev python-all-dev
gtk+-2.0 glib-2.0 libgio2.0-cil-dev libgit2-dev doxygen libcurl4-nss-dev libgconf2-dev libgnome-keyring-dev gperf libcups2-dev flex libfl-dev libbison-dev libxtst-dev libxss-dev libbz2-dev lib32asound2-dev libjpeg62-dev libxml2-dev librsvg2-dev libdbus-glib-1-dev libzthread-dev
    libqt4-opengl-dev freeglut3-dev libavformat-dev libavcodec53 libswscale-dev
    python-dev libboost-python-dev libboost-thread-dev libsdl1.2-dev libdc1394-22-dev mtdev-tools
• Download Berkelium Sources; extract and build Berkelium as per section 1.2.
• Download libbrowsernode patches & libavg Sources from trunk; extract and build libavg as per section 1.3.
• Proceed to install Xibo Python Client in section 1.4.

1.2 Source Build – Berkelium
The following steps were tested and updated as on June 28, 2013 for version 11.0.696.77 based on Ubuntu 12.10 64-bit OS.
Download berkelium v11.
• $ git clone git://github.com/sirikata/berkelium.git
• Make the following changes to file “./berkelium/patches/chromium-glib-i18n.patch”
Index: ui/base/l10n/l10n_util.cc
===================================================================
--- ui/base/l10n/l10n_util.cc (revision 87952)
+++ ui/base/l10n/l10n_util.cc (working copy)
@@ -5,5 +5,5 @@

#if defined(TOOLKIT_USES_GTK)
-#include <glib/gutils.h>
+#include <glib.h>
 #endif

 #include <algorithm>

• Manual patch the file to include e.g. #include <unistd.h> to support sleep function i.e. ./berkelium/demo/ppmrender/ppmmain.cpp

Navigate to the download source root directory i.e. berkelium/. Execute the following automated script:
• $ ./util/build-chromium.sh

The script will download and apply the required patches to the chromium sources, before proceed to build chromium. The whole process is complicated, and problems are likely to arise due to network interruption and missing development tools; hence you will likely to see many warnings & errors during the process. You will need to manually resolve each one with reference to the display error messages e.g.:
• Install any missing development tools using synaptic manager, usually the tools are libxxx–dev.
• When rerun the script, you need the take the necessary actions when following errors occur:
Delete any un-versioned directories as instructed; svn files conflict due to incomplete update during downloading.
During SVN file synchronization, each status line is indicated with an acronym A=Add, U=Update, D=Delete & C=Conflict; delete any “C” conflict files or directories and restart.
After all the fixes have been applied, rerun the script until the whole build process completed successfully with only CXX warnings.

Before proceed to perform make process, you need to fetch cxxtest source files:
• $ cd ./berkelium/externals
• $ git clone –b v3sirikata https://github.com/sirikata/cxxtest.git

Then generate a Makefile for release version:
• $ cmake . -DCMAKE_BUILD_TYPE=Release –DCMAKE_INSTALL_PREFIX:PATH=/usr

To build berkelium, run:
• $ sudo make
• $ sudo make install

1.3 Source Build – Libavg Trunk Version
The following build is based on latest release of svn trunk source. Download libbrowsernode patches from:
• bzr branch lp:~browsernode-team/+junk/berkelium-browsernode

Download Libavg sources from the trunk using:
• svn co https://www.libavg.de/svn/trunk/libavg

You need to copy the browsernode source and berkelium library header files over to libavg; rename libavg/src/test/plugin/Makefile.am to Makefile_.am for reference before copying files i.e.
• Copy the browsernode source files i.e. berkelium-browsernode/plugin/* as libavg/src/test/plugin/*.
• Copy berkelium-delegate source files i.e. berkelium-browsernode/berkelium-delegate/src/*.cpp as libavg/src/test/plugin/src.
• Copy berkelium-delegate header files i.e. berkelium-browsernode/berkelium-delegate/src/*.h as libavg/src/test/plugin/
• Copy berkelium library header files i.e. berkelium/include/berkelium as libavg/src/test/plugin/berkelium.
• Combined all the above three Makefile.am files into single Makefile.am file i.e.
INCLUDES = -I. -I../player \
 @XML2_CFLAGS@ @PTHREAD_CFLAGS@ @PANGOFT2_CFLAGS@ @PYTHON_INCLUDES@ @DC1394_2_CFLAGS@
 ALL_H =

 if APPLE
 XGL_LIBS =
 EXTRA_LDFLAGS=-read_only_relocs suppress
 else
 XGL_LIBS = -lXxf86vm
 EXTRA_LDFLAGS=-XCClinker ../../wrapper/.libs/avg.so
 endif

 ALL_GL_LIBS = @GL_LIBS@ @SDL_LIBS@ $(XGL_LIBS)
 ACLOCAL_AMFLAGS = -I m4

 # Include file directory
 INC_DIR = ./include
 AM_CPPFLAGS=$(PYTHON_INCLUDES)

 lib_LTLIBRARIES = libberkelium_delegate.la
 libberkelium_delegate_la_SOURCES = src/berkelium.cpp src/BerkeliumDelegate.cpp
 libberkelium_delegate_la_LIBADD = -llibberkelium
 include_HEADERS =

 pkgpyexec_LTLIBRARIES = libbrowsernode.la colorplugin.la
 libbrowsernode_la_SOURCES = BrowserNode.cpp
 libbrowsernode_la_LDFLAGS = -lberkelium_delegate $(EXTRA_LDFLAGS) -module

 colorplugin_la_SOURCES = ColorNode.cpp
 colorplugin_la_LDFLAGS = $(EXTRA_LDFLAGS) –module

Please refer to the following site to understand, and the use of Linux Ubuntu configuration autotools: http://www.freesoftwaremagazine.com/books/autotools_a_guide_to_autoconf_automake_libtool.

Navigate to libavg root directory i.e. ./libavg; Perform the steps below to generate the required configure file.
• $ touch README AUTHORS ChangeLog
• $ autoreconf -v
• $ automake –-add-missing
• $ ./configure -–prefix=/usr
• $ sudo make
• $ sudo make install
Create the libberkeliumwrapper.so as below.
• touch a.cpp
• g++ -c a.cpp -o a.o
• g++ a.o -shared -llibberkelium -o libberkeliumwrapper.so

Copy the generated shared object libberkeliumwrapper.so to directory /usr/lib.
Execute the following command to trigger the system to update its list of installed shared libraries.
• sudo ldconfig

1.4 Xibo Python Client Installation
Perform the following steps to download and install xibo python client:
• $ sudo mkdir /opt/xibo
• $ cd /opt/xibo
• $ sudo bzr branch lp:xibo pyclient
• $ sudo chmod -R 777 /opt/xibo
• If you're using an Intel graphics card, edit /opt/xibo/pyclient/client/python/run.sh and add the following before the line beginning "python XiboClient.py"
 export LD_PRELOAD_32=/usr/lib/libstdc++.so.6
Note: change LD_PRELOAD_32 to LD_PRELOAD if you are using a 32-bit OS machine

Delete and update the libbrowsernode.so in opt/xibo/pyclient/client/python or change the default pluginPath i.e.
• sudo cp /usr/lib/python2.7/dist-packages/libavg/libbrowsernode.so /opt/xibo/pyclient/client/python

Alternatively, you can specify the pluginPath for the libbrowsernode.so before loadPlug statement in XiboCliet.py
• self.player.pluginPath = "/usr/lib/python2.7/dist-packages/libavg/"
• self.player.loadPlugin("libbrowsernode")

Paul Cashman (1hd1jh03y) said : #28

If this is Working....would you be willing to share your binaries?

Eng Chong Meng (engcm) said : #29

Yes, I have both the deb installation packages for 32-bit and 64-bit. Please let me know I do I forward to you.

Eng Chong Meng (engcm) said : #30

Hi,

Yes, let me know how I can forward the binary (deb) package to you.
Note: The files are too large to send via mail.

Regards,
CM Eng

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of Paul Cashman
Sent: Saturday, August 24, 2013 12:01 AM
To: <email address hidden>
Subject: Re: [Question #200103]: ubuntu 12.04

Question #200103 on Xibo changed:
https://answers.launchpad.net/xibo/+question/200103

Paul Cashman requested more information:
If this is Working....would you be willing to share your binaries?

--
You received this question notification because you are a direct subscriber of the question.

jian (huangjian0209) said : #32

Hi, Eng Chong Meng

Could you please tell me how did you solve the issue as you said on 2012-09-26, (#13)

RuntimeError: /usr/local/lib/python2.7/dist-packages/libavg/plugin/libbrowsernode.so: undefined symbol: _ZN9Berkelium6Window7destroyEv

I had an issue like this these days after I built and installed the berkelium and libbrowsenode.

Thanks.

Victor VC (victor-chipizhin) said : #33

Hi!
I did everything as described in #27:
Berkelium builded OK......
Build libavg:
========================
Navigate to libavg root directory i.e. ./libavg; Perform the steps below to generate the required configure file.
• $ touch README AUTHORS ChangeLog
• $ autoreconf -v
• $ automake –-add-missing
• $ ./configure -–prefix=/usr
• $ sudo make
=========================
after the command 'sudo make' - I have this result:
........................................
Making all in player
make[3]: Directory entry `~/BUILD/libavg/src/player'
  CXXLD testplayer
TUIOInputDevice.cpp:89: error: undefined reference to 'pthread_create'
collect2: ld returned 1 exit status
make[3]: *** [testplayer] Error 1
make[3]: Выход из каталога `~/BUILD/libavg/src/player'
make[2]: *** [all-recursive] Error 1
make[2]: Выход из каталога `~/BUILD/libavg/src'
make[1]: *** [all] Error 2
make[1]: Выход из каталога `~/BUILD/libavg/src'
make: *** [all-recursive] Error 1

Please - help me.

Thanks

Eng Chong Meng (engcm) said : #34

Hi,

You need to install one of the lib for 'pthread_create'. In the past I have tried many attempts to install the correct lib; but now I cannot remember the name of library that I have installed to make it work.
Try google around to see if you can find the correct lib to install.

Following are all the lib I have installed, but not sure if it includes the lib for pthread_create.

build-essential subversion bzr autoconf libtool libpam0g-dev
git-core gyp cmake libvdpau-dev libxmu-dev python-all-dev
gtk+-2.0 glib-2.0 libgio2.0-cil-dev doxygen libcurl4-nss-dev libgconf2-dev libgnome-keyring-dev gperf
libcups2-dev flex libfl-dev libbison-dev libxtst-dev libxss-dev libbz2-dev
libjpeg62-dev libxml2-dev librsvg2-dev libdbus-glib-1-dev libzthread-dev
libqt4-opengl-dev freeglut3-dev libavformat-dev libswscale-dev
python-dev libboost-python-dev libboost-thread-dev libdc1394-22-dev libgraphicsmagick++3 libgraphicsmagick3 lib python-soappy python-feedparser libavcodec53 glade-gtk2
libsdl1.2-dev mtdev-tools libmtdev-dev

• For 64-bit OS only
lib32asound2-dev

Regards,
CM Eng

--- Victor VC <email address hidden> wrote:

> Question #200103 on Xibo changed:
> https://answers.launchpad.net/xibo/+question/200103
>
> Victor VC posted a new comment:
> Hi!
> I did everything as described in #27:
> Berkelium builded OK......
> Build libavg:
> ========================
> Navigate to libavg root directory i.e. ./libavg; Perform the steps
> below to generate the required configure file.
> • $ touch README AUTHORS ChangeLog
> • $ autoreconf -v
> • $ automake –-add-missing
> • $ ./configure -–prefix=/usr
> • $ sudo make
> =========================
> after the command 'sudo make' - I have this result:
> ........................................
> Making all in player
> make[3]: Directory entry `~/BUILD/libavg/src/player'
> CXXLD testplayer
> TUIOInputDevice.cpp:89: error: undefined reference to
> 'pthread_create'
> collect2: ld returned 1 exit status
> make[3]: *** [testplayer] Error 1
> make[3]: ВыÑ
од из каталога
> `~/BUILD/libavg/src/player'
> make[2]: *** [all-recursive] Error 1
> make[2]: ВыÑ
од из каталога `~/BUILD/libavg/src'
> make[1]: *** [all] Error 2
> make[1]: ВыÑ
од из каталога `~/BUILD/libavg/src'
> make: *** [all-recursive] Error 1
>
> Please - help me.
>
> Thanks
>
> --
> You received this question notification because you are a direct
> subscriber of the question.
>

Eng Chong Meng (engcm) said : #35

Hi,

You need to install one of the lib for 'pthread_create'. In the past I have tried many attempts to install the correct lib; but now I cannot remember the name of library that I have installed to make it work.
Try google around to see if you can find the correct lib to install.

Following are all the lib I have installed, but not sure if it includes the lib for pthread_create.

build-essential subversion bzr autoconf libtool libpam0g-dev
git-core gyp cmake libvdpau-dev libxmu-dev python-all-dev
gtk+-2.0 glib-2.0 libgio2.0-cil-dev doxygen libcurl4-nss-dev libgconf2-dev libgnome-keyring-dev gperf
libcups2-dev flex libfl-dev libbison-dev libxtst-dev libxss-dev libbz2-dev
libjpeg62-dev libxml2-dev librsvg2-dev libdbus-glib-1-dev libzthread-dev
libqt4-opengl-dev freeglut3-dev libavformat-dev libswscale-dev
python-dev libboost-python-dev libboost-thread-dev libdc1394-22-dev libgraphicsmagick++3 libgraphicsmagick3 lib python-soappy python-feedparser libavcodec53 glade-gtk2
libsdl1.2-dev mtdev-tools libmtdev-dev

• For 64-bit OS only
lib32asound2-dev

Regards,
CM Eng

--- Victor VC <email address hidden> wrote:

> Question #200103 on Xibo changed:
> https://answers.launchpad.net/xibo/+question/200103
>
> Victor VC posted a new comment:
> Hi!
> I did everything as described in #27:
> Berkelium builded OK......
> Build libavg:
> ========================
> Navigate to libavg root directory i.e. ./libavg; Perform the steps
> below to generate the required configure file.
> • $ touch README AUTHORS ChangeLog
> • $ autoreconf -v
> • $ automake –-add-missing
> • $ ./configure -–prefix=/usr
> • $ sudo make
> =========================
> after the command 'sudo make' - I have this result:
> ........................................
> Making all in player
> make[3]: Directory entry `~/BUILD/libavg/src/player'
> CXXLD testplayer
> TUIOInputDevice.cpp:89: error: undefined reference to
> 'pthread_create'
> collect2: ld returned 1 exit status
> make[3]: *** [testplayer] Error 1
> make[3]: ВыÑ
од из каталога
> `~/BUILD/libavg/src/player'
> make[2]: *** [all-recursive] Error 1
> make[2]: ВыÑ
од из каталога `~/BUILD/libavg/src'
> make[1]: *** [all] Error 2
> make[1]: ВыÑ
од из каталога `~/BUILD/libavg/src'
> make: *** [all-recursive] Error 1
>
> Please - help me.
>
> Thanks
>
> --
> You received this question notification because you are a direct
> subscriber of the question.
>

Jared Ambrose (jared-ambrose) said : #37

Hello All,

Just checking in on this. Has anyone built the 64bit binaries successfully for 10.04?

Thx.

As many of you I had problems with drivers in ubuntu 10.04 so I used the libraries compile for the 12.04 and I have the installation script working how do I submit the file for everyone to use it?

Hi Julian

If they're the libraries that were previously made available then hardware
acceleration for video playback is broken and that makes them basically
unusable - or did you fix that?

Yes Alex I think I fix them I just look for the new library version in ubuntu repositories and change them in the apt-get, and it is been workin with no problem in ubuntu 12.04. please give me your e-mail and I send you the config file with the modifications

I attached the new script for ubuntu 12.04, please copy and test it

#!/bin/bash

set -e

# Script by Brian Mathis - http://www.brianmathis.net (c) 2012
# This script will update, download, and install the Python
# client for use with Xibo - Open Source Digital Signage

# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program. If not, see http://www.gnu.org/licenses

#######################################################################
###
### Version 1.4.0 - 10/24/2012
### Changelog
###
### 1. Updated to use 1.4 branch of Xibo
###
### Version 1.3.3 - 8/16/2011
### Changelog
###
### 1. Removed support for 9.10
### 2. Added support for 11.10
### 3. Added libvdpau1 dependency
### 4. Changed binary tar download
### 5. Changed pulled version to 1.3
### 6. Removed running configuration utility (broken)
###
### Version 1.3.2 - 2/14/2011
### Changelog
###
### 1. Added an option to run the configuration utility
### 2. Installing a new client will now run the configuration utility after client is installed
### 3. Changed bzr to pull from xibo/1.2
###
### Version 1.3.1 - 2/8/2011
### Changelog
###
### 1. Changed folder check directory to /opt/xibo/pyclient
### 2. Moved folder check to the beginning of install to stop script before downloading and packages
### 3. Added the -p option to continue if /opt/xibo exists
### 4. Checks if /opt/xibo/pyclient exists before attempting to update client
### 5. Added error if dir doesnt exist when updating
###
### Version 1.3 - 1/29/2011
### Changelog
###
### 1. Added support for 11.04.
### 2. Added command to stop script on any error.
### 3. Added case menu to select install or update.
### 4. Checks if /opt/xibo already exists. If it does, the script will exit.
### 5. If updating, creates a backup of site.cfg, just in case.
###
#######################################################################

# Checks to ensure the user is running as root since we will be making system wide changes

if [ ! "`whoami`" = "root" ]; then
  echo " "
  echo "========================================================"
  echo " This script must be run as root or with sudo... Exiting"
  echo "========================================================" 1>&2
  sleep 3
 exit 1
fi

echo " "
echo "========================================================"
echo " Xibo Python Client Installation Script v1.3"
echo " Ubuntu 9.04, 9.10, 10.04, 10.10, & 12.04"
echo " Script by Brian Mathis - http://www.brianmathis.net (c)2010-2011"
echo " This script will update, download, and install the Python"
echo " client for use with Xibo - Open Source Digital Signage"
echo "========================================================"
echo " "
echo "Please select an option to continue..."
echo " "
echo " [1] Install new client"
echo " [2] Update client"
## echo " [3] Run Configuration Utility"
echo " [q] Quit"
echo " "
echo " "

read OPTION

 case "$OPTION" in
  "1")

   # Stops the script if dir already exists.
   if [ -d "/opt/xibo/pyclient" ]; then

    echo "Error: /opt/xibo already exists. If you would like to upgrade"
    echo "your client, please choose option 2. Otherwise, please check"
    echo "the directory and try again."
    exit 1

   else

    # Creates dir
    mkdir -p /opt/xibo

   fi

   # Check which version of Ubuntu the user is running and then selects what to do
   codename=`lsb_release -c | awk '{print $2}'`

   if [ "$codename" = "jaunty" ];

    then echo "Ubuntu 9.04 is no longer officially supported by Canonical, please use Ubuntu 10.04" && exit 1

   elif [ "$codename" = "karmic" ];

    then echo "Ubuntu 9.10 is no longer officially supported by Canonical, please use Ubuntu 10.04" && exit 1

   elif [ "$codename" = "precise" ]

    then
     echo " "
     echo "========================================================"
     echo " Installing Xibo Python Client for Ubuntu 12.04"
     echo " Required packages and binaries will now be installed"
     echo "========================================================"
     echo " "

     # Updates the package manager
     apt-get update > /dev/null

     # downloads the required files per http://wiki.xibo.org.uk/wiki/Install_Guide_Python_Client#Ubuntu_10.04_and_derivatives
     apt-get install -y glade-gtk2 libboost-python1.46.1 libboost-thread1.46.1 libdc1394-22 libgtk2.0-0 libavutil51 bzr python-soappy python-feedparser python-serial flashplugin-installer libavcodec53 libavformat53 libswscale2 libsdl1.2debian libvdpau1 > /dev/null

     # downloads the binary files that Alex Harrington put together

     wget -N https://launchpad.net/xibo/1.4/1.4.2/+download/libavg-1.7.1-vdpau-berkelium11-12.04.tar.gz

   elif [ "$codename" = "maverick" ]

    then echo "Ubuntu 10.10 is not supported by Xibo, please us 10.04" && exit 1

   elif [ "$codename" = "natty" ]

    then echo "Ubuntu 11.04 is not yet supported by Xibo, please us 10.04" && exit 1

   elif [ "$codename" = "Oneiric" ]

    then echo "Ubuntu 11.10 is not supported by Xibo, please use 10.04" && exit 1

   else

    echo "Error: I cannot determine your version of Ubuntu." && exit 1

   fi

   # extracts the tar to /
   tar xf libavg-* -C /

   # removes tar file after extract
   rm libavg-*

   # runs ldconfig
   ldconfig

   # moves to dir and downloads pyclient
   # cd /opt/xibo && bzr branch http://bazaar.launchpad.net/~xibo-maintainers/xibo/biela
   cd /opt/xibo && bzr branch lp:xibo/1.4 pyclient

   ## renames the directory
   # mv biela pyclient

   # grants 777 read/write permissions to all
   chmod -R 777 /opt/xibo

   # opens configuration client by Matt Holder
   # cd /opt/xibo/pyclient/client/python/ && ./configure.py

   echo " "
   echo "========================================================"
   echo " All done. Navigate to /opt/xibo/pyclient/client/python"
   echo " to make changes to site.cfg "
   echo " For more info on the Python client, visit: "
   echo " http://wiki.xibo.org.uk/wiki/Install_Guide_Python_Client"
   echo "========================================================"
   echo " "

   sleep 3

  ;;

  "2")

   # Checks to make sure Xibo is in /opt/xibo/pyclient.
   if [ -d "/opt/xibo/pyclient" ]; then

    echo " "
    echo "========================================================"
    echo " Creating a backup of site.cfg and updating the"
    echo " Xibo bzr branch. "
    echo "========================================================"
    echo " "

    sleep 3

    # Before pulling, make a backup of site.cfg
    cp /opt/xibo/pyclient/client/python/site.cfg /opt/xibo/pyclient/client/python/site.cfg.backup

    # Move to the install dir
    cd /opt/xibo/pyclient

    # Pull the latest and greatest from bzr
    bzr pull > /dev/null

    echo " "
    echo " "
    echo "========================================================"
    echo " Done updating your client."
    echo "========================================================"
    echo " "

    sleep 3

   else

    echo " "
    echo "Error: /opt/xibo/pyclient does not exist. Was it installed somewhere else?"
    echo " "

   fi

  ;;

  ## "3")

   ## Checks to make sure Xibo is in /opt/xibo/pyclient/client/python
   ## if [ -f "/opt/xibo/pyclient/client/python/configure.py" ]; then

    ## cd /opt/xibo/pyclient/client/python/ && ./configure.py

   ## else

    ## echo " "
    ## echo "Error: configure.py does not appear to exsist in /opt/xibo/pyclient/client/python"
    ## echo " "

   ## fi

  ## ;;

  "Q"|"q")

   echo " "
   echo "Thanks for using Xibo - Open Source Digital Signage"
   echo " "
   echo " "

  ;;
 esac

Hello Don't forget to replace libbrowsernode.so in in /opt/xibo/pyclient/client/python/

I forgot to add it on the installation script

Hi Julien

It's the binary blob the script downloads that has the problem. It doesn't
correctly implement VDPAU so there's no hardware acceleration unfortunately

Alex

I just made a complete check of the libraries sorry for the error it is also needed another library

please change on line 140 for this because it is missing one more dependency libxss1:

apt-get install -y libxss1 glade-gtk2 libboost-python1.46.1 libboost-thread1.46.1 libdc1394-22 libgtk2.0-0 libavutil51 bzr python-soappy python-feedparser python-serial flashplugin-installer libavcodec53 libavformat53 libswscale2 libsdl1.2debian libvdpau1 > /dev/null

Sorry to send three post of what should been in one

Hi Julian

Yes thank you, but hardware acceleration will still be broken?

Can you confirm full hd video plays back on say an Atom CPU because last
time I tried with these libraries it didn't work

Alex

I tested the software on a ATOM D2550 dualcore chipset NM10 express chipset, AMD Radeon HD 7410M graphic Engine.

I see the video and plays fine, what do I do to check if the hardward acceleration is working?

Hello Alex

What type of video card do you have NVIDEA, AMD ATI or INTEL?

Nvidia is what is officially supported.

Your test video needs to be 1080p full HD. It should play back smoothly
with no stuttering or juddering.

Alex

I tested in two different hardware the ATI AMD has problem with video 1080. Videos with 720p no problem

I tested in other machine with INTEL video driver 1080p it plays smoothly unfuntenly I could not tested in NVIDEA because I don't have the hardware.

So the problem I have in ATI hardware is due to a config problem in the hardware or the driver itself that I am trying to solve is nothing to do with the XIBO pyclient.

Alex

I tested in two different hardware the ATI AMD has problem with video 1080.
Videos with 720p no problem

I tested in other machine with INTEL video driver 1080p it plays smoothly
unfuntenly I could not tested in NVIDEA because I don't have the hardware.

So the problem I have in ATI hardware is due to a config problem in the
hardware or the driver itself that I am trying to solve is nothing to do
with the XIBO pyclient.

*Julian Correa RomeroJefe de Investigación y DesarrolloM: +57 3173732371T:
+572 6689603 Ext 27624D: Av. 2D N 24 N
75Cali,<email address hidden>
<http://www.google.com/url?q=http%3A%2F%2Fwww.musicar.com%2F&sa=D&sntz=1&usg=AFrqEzctBJDr1YXEo3MSO8ztTF4mITUUaw>**Estamos
en: **Colombia - Venezuela - El Salvador - Panamá - Costa Rica*

*Nuestros valores: **Integridad - Orientación al cliente - Innovación -
Respeto -*

*Responsabilidad Social - Compromiso con los resultados -- Flexibilidad
al cambio*

2014-01-29 Alex Harrington <email address hidden>

> Question #200103 on Xibo changed:
> https://answers.launchpad.net/xibo/+question/200103
>
> Alex Harrington proposed the following answer:
> Nvidia is what is officially supported.
>
> Your test video needs to be 1080p full HD. It should play back smoothly
> with no stuttering or juddering.
>
> --
> You received this question notification because you are a direct
> subscriber of the question.
>

--

La información contenida en este e-mail y sus anexos, es confidencial y
solo puede ser utilizada por la persona a la cual está dirigida. Si Usted
no es el receptor autorizado, cualquier retención, difusión, distribución o
copia de este mensaje y sus anexos, es prohibida y sancionada por la ley.
Si por error recibe este mensaje, por favor reenviarlo al remitente y
borrar el mensaje recibido inmediatamente.
This message, including any attachments, contains confidential information.
If you are not the intended recipient and received this email by mistake,
please refrain from using or revealing it in any way. Please inform the
sender and delete it. Any unauthorized use, disclosure or distribution of
this message is strictly prohibited.

Evita imprimir este mensaje si no es estrictamente necesario, de esta
manera ahorramos agua, energía y recursos forestales, MUSICAR contribuye
con nuestro medio ambiente.

Eng Chong Meng (engcm) said : #51

Hi Alex,

Attached is the manual update for xibo 1.5.2

Regards,
CM Eng

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of Alex Harrington
Sent: Wednesday, January 29, 2014 2:21 PM
To: <email address hidden>
Subject: Re: [Question #200103]: ubuntu 12.04

Question #200103 on Xibo changed:
https://answers.launchpad.net/xibo/+question/200103

Alex Harrington proposed the following answer:
Nvidia is what is officially supported.

Your test video needs to be 1080p full HD. It should play back smoothly with no stuttering or juddering.

--
You received this question notification because you are a direct subscriber of the question.

Hi

We already reworked what you submitted last time

See http://xibo.org.uk/manual

Best wishes

Alex

Can you help with this problem?

Provide an answer of your own, or ask JPZ for more information if necessary.

To post a message you must log in.