User Tools

Site Tools


building_owncloud_client_for_raspberry_pi

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
building_owncloud_client_for_raspberry_pi [2016/11/06 11:11]
sgripon [Build]
building_owncloud_client_for_raspberry_pi [2018/11/02 09:06] (current)
sgripon [ppa]
Line 4: Line 4:
 I use my Raspberry pi as an owncloud client to synchronize my NAS and my server. Unfortunately,​ the official package is not up-to-date so I have to build it by myself. ​ I use my Raspberry pi as an owncloud client to synchronize my NAS and my server. Unfortunately,​ the official package is not up-to-date so I have to build it by myself. ​
  
-**Update!**:​ this page has been updated for client 2.2.4+**Update!**:​ this page has been updated for client 2.5.0 compatible with raspbian stretch
  
-**DISCLAIMER :!:** Tested on raspbian ​jessie ​on raspi 1 only. Feedback welcome on twitter. See [[https://​www.raspberrypi.org/​forums/​viewtopic.php?​f=36&​t=34881&​p=1063790#​p1063790|this thread]] for some known issues on other versions.+**DISCLAIMER :!:** Tested on raspbian ​stretch ​on raspberry pi 3. Feedback welcome on twitter.
  
 **Note:** if you need a newer version of the client, just tweet me [[https://​twitter.com/​sgripon|@sgripon]]. **Note:** if you need a newer version of the client, just tweet me [[https://​twitter.com/​sgripon|@sgripon]].
 ===== Download binaries ===== ===== Download binaries =====
  
-If you don't want to compile by yourself, you can get the debian package installer from [[http://​pub.sgripon.net/​owncloud-client/​rpi/]]. To install:+If you don't want to compile by yourself, you can get the debian package installer from
 +  * [[http://​pub.sgripon.net/​owncloud-client/​rpi3/]]: tested on raspberry pi 3 stretch. 
 +  * [[http://​pub.sgripon.net/​owncloud-client/​rpi/​]]:​ <2.3.2 tested on raspberry pi 1 jessie.
  
-  ​sudo dpkg -i owncloud-client-2.2.4_armhf.deb+To install: 
 + 
 +  ​sudo dpkg -i owncloud-client-2.5.0_armhf.deb
  
 If there are missing dependencies,​ this command should automatically install all: If there are missing dependencies,​ this command should automatically install all:
Line 24: Line 28:
 ===== ppa ===== ===== ppa =====
  
-I also experiment ppa. You can try it by adding ​my ppa to the source.list. Add line:+You can add my ppa to the source.list. Add line:
  
 +  # For stretch, support versions > 2.5.0.
 +  deb [trusted=yes] http://​pub.sgripon.net/​ppa-raspbian stretch/
 +
 +  # For jessie until version 2.3.2
   deb http://​pub.sgripon.net ppa/   deb http://​pub.sgripon.net ppa/
   ​   ​
Line 40: Line 48:
 ===== Build ===== ===== Build =====
  
-Most of the build instructions are from owncloud official website (http://​doc.owncloud.org/​desktop/​2.2/​building.html) with some adjustments for RPI.+Most of the build instructions are from owncloud official website (http://​doc.owncloud.org/​desktop/​2.4/​building.html) with some adjustments for RPI.
  
-Get owncloud client sources from official web site here: https://download.owncloud.com/desktop/stable/owncloudclient-2.2.4.tar.xz.+Get owncloud client sources from official ​github ​web site here: https://github.com/owncloud/client/archive/v2.5.0.zip.
  
 This tutorial assumes that the work is done on raspbian in folder /​home/​pi/​dev/​owncloud-client. If not, change all paths. This tutorial assumes that the work is done on raspbian in folder /​home/​pi/​dev/​owncloud-client. If not, change all paths.
Line 50: Line 58:
 <code bash> <code bash>
   cd /​home/​pi/​dev/​owncloud-client   cd /​home/​pi/​dev/​owncloud-client
-  wget https://​download.owncloud.com/​desktop/​stable/​owncloudclient-2.2.4.tar.xz 
 </​code>​ </​code>​
   ​   ​
Line 56: Line 63:
  
 <code bash> <code bash>
-  sudo apt-get install libsqlite3-dev ​libneon27-dev +  ​sudo apt-get install libssl-dev 
-  sudo apt-get install ​libqt4-dev libqtkeychain0 qtkeychain-dev libqt4-sql-sqlite+  ​sudo apt-get install libsqlite3-dev 
 +  sudo apt-get install zlib1g-dev 
 +  sudo apt-get install ​qt5-default libqt5webkit5-dev qttools-dev-tools qt5keychain-dev
 </​code>​ </​code>​
  
Line 69: Line 78:
 The following script downloads and builds the source code (remove download command (//wget//) if already done). The script must be invoked with the desired client version: The following script downloads and builds the source code (remove download command (//wget//) if already done). The script must be invoked with the desired client version:
  
-  ./build.sh 2.2.4+  ./oc-build.sh 2.5.0
   ​   ​
 The script should work for future versions unless ownlcoud changes files naming. The script should work for future versions unless ownlcoud changes files naming.
Line 76: Line 85:
 #!/bin/sh #!/bin/sh
   ​   ​
-wget https://download.owncloud.com/desktop/stable/owncloudclient-$1.tar.xz +# Download and extract source from official github website 
-tar -xf owncloudclient-$1.tar.xz+if [ ! -f v$1.zip ]; then 
 +  ​wget https://github.com/owncloud/client/archive/v$1.zip 
 +fi 
 + 
 +unzip v$1.zip 
 + 
 +# Build
 mkdir client-build ​ mkdir client-build ​
 cd client-build cd client-build
-cmake -DWITH_DOC=TRUE -DCMAKE_BUILD_TYPE="​Release"​ ../owncloudclient-$1+cmake -DWITH_DOC=TRUE -DCMAKE_BUILD_TYPE="​Release"​ ../client-$1
 make make
- 
-# Prepare a redistribuable package 
-make package 
  
 </​file>​ </​file>​
  
-Then, installation:​+Then, installation. The following script must be run as root:
  
-  ​sudo make install +<code bash> 
-   +sudo ./oc-install.sh 2.5.0 
-Then it seems that libocsync and libowncloudsync shared libraries must be installed manually:+</​code>​
  
-  sudo cp csync/​src/​libocsync.so.2.2.4 ​/usr/local/lib +<file bash oc-install.sh> 
-  sudo cp src/libsync/​libowncloudsync.so.2.2.4 /​usr/​local/​lib +#!/bin/sh 
-  sudo ldconfig+ 
 +cd client-build 
 + 
 +# Prepare a redistribuable package 
 +make package 
 + 
 +make install 
 + 
 +</file>
 ===== Build a debian package ===== ===== Build a debian package =====
  
Line 111: Line 131:
 Add also libraries installed manually: Add also libraries installed manually:
  
-  cp /​usr/​local/​lib/​libocsync.so.2.2.usr/​local/​lib +  cp /​usr/​local/​lib/​arm-linux-gnueabihf/​libowncloud_csync.so.2.5.usr/​local/​lib 
-  cp /​usr/​local/​lib/​libowncloudsync.so.2.2.usr/​local/​lib+  cp /​usr/​local/​lib/​arm-linux-gnueabihf/​libowncloudsync.so.2.5.usr/​local/​lib
  
 Then, follow tutorial [[How To Build a Debian Package]]. Then, follow tutorial [[How To Build a Debian Package]].
Line 135: Line 155:
 cat <<​EOT>>​ DEBIAN/​control cat <<​EOT>>​ DEBIAN/​control
 Package: owncloud-client Package: owncloud-client
-Version: $1+debian+rpi1+Version: $1+debian+rpi3
 Homepage: https://​wiki.sgripon.net/​doku.php?​id=building_owncloud_client_for_raspberry_pi Homepage: https://​wiki.sgripon.net/​doku.php?​id=building_owncloud_client_for_raspberry_pi
-Depends: ​libc6 (>= 2.13-28)libgcc1 (>= 1:4.4.0)libqt4-network (>= 4:4.7.0~beta1)libqt4-test (>= 4:4.5.3)libqt4-xml (>= 4:4.5.3)libqtcore4 (>= 4:4.8.0)libqtgui4 (>= 4:​4.7.0~beta1)libqtkeychain0 (>= 0.1.0), libstdc++6 ​(>= 4.4.0)libqtwebkit4libqt4-xmlpatterns+Depends: ​libqt5dbus5libqt5webkit5,​ libqt5xml5libsqlite3-0, libqt5concurrent5zlib1glibqt5keychain1libqt5network5libqt5gui5, libqt5core5a, libstdc++6, ​libgcc1libc6
 Priority: optional Priority: optional
 Section: net Section: net
Line 171: Line 191:
  
 Must be invoked as sudo with version number as argument: Must be invoked as sudo with version number as argument:
-  sudo ./​oc-build-deb.sh 2.2.4+  sudo ./​oc-build-deb.sh 2.5.0
  
 ===== Launch at startup ===== ===== Launch at startup =====
Line 185: Line 205:
  
 Older versions can have a different build sequence: Older versions can have a different build sequence:
 +  * [[building_owncloud_client_for_raspberry_pi_232|Owncloud client 2.3.2]]
   * [[building_owncloud_client_for_raspberry_pi_170|Owncloud client 1.7.0]]   * [[building_owncloud_client_for_raspberry_pi_170|Owncloud client 1.7.0]]
  
 **Share this page:** **Share this page:**
 ~~socialite~~ ~~socialite~~
building_owncloud_client_for_raspberry_pi.1478427089.txt.gz · Last modified: 2016/11/06 11:11 by sgripon