User Tools

Site Tools


wiki:development:build-howto-macos:x2goclient

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
Next revision Both sides next revision
wiki:development:build-howto-macos:x2goclient [2013/03/08 13:31]
127.0.0.1 external edit
wiki:development:build-howto-macos:x2goclient [2013/09/26 08:57]
sunweaver
Line 1: Line 1:
-====== Build X2GoClient on MacOS ======+====== Building X2Go Client on Mac OS ======
  
-wiki-writing-todo (FIXME)+===== Build X2Go Client using Mac Ports =====
  
 +As X2Go Client is already in Mac Ports (thanks to Clemens Lang) it is possible to install all dependencies via Mac Ports.
  
-===== Variables =====+**Steps summarized:** 
 + 
 +  - Install Mac Ports on your Mac OS system 
 +  - Take a look at the dependency list (in a terminal shell) 
 +  - And install those dependencies 
 +  - Install dylibbundler 
 +  - Get X2Go Client from X2Go Git 
 +  - Build X2Go Client 
 + 
 +So, first install the X2Go Client dependencies: 
 + 
 +<code> 
 +$ port echo depof:x2goclient 
 +$ sudo port install depof:x2goclient 
 +</code> 
 + 
 +Then install dylibbundler: 
 + 
 +<code> 
 +$ sudo port install dylibbundler 
 +</code> 
 + 
 +Once the dependencies are installed, tweak some file permissions: 
 + 
 +<code> 
 +$ sudo chmod u+w /opt/local/lib/libcrypto.1.0.0.dylib /opt/local/lib/libssl.1.0.0.dylib 
 +</code> 
 + 
 +If you omit the file permission tweak, dylibbundler will fail to build/bundle X2Go Client. 
 + 
 +At last, checkout X2Go Client from Git: 
 +<code> 
 +$ git clone git://code.x2go.org/x2goclient.git 
 +</code> 
 + 
 +If you want to build a specific version of X2Go Client, select that version with ''git checkout <version>''. If you want to look around what versions are available, use ''git tag'' which will present you a list of valid version tags to use for checkout. 
 +       
 +In the X2Go Client source directory, simply run the ''macbuild.sh'' script: 
 + 
 +<code> 
 +$ ./macbuild.sh 
 +</code> 
 + 
 +      
 +===== Build X2Go Client from Scratch (w/o Mac Ports) ===== 
 +                    
 +==== Variables ====
  
 This document makes use of several variables to address paths in a generic, but distinct way. They are not meant to be used via shell, but for human parsing. No program of the x2go suite actually uses them for anything. You may "set" them to whatever value you want to (in your head), just don't change them half-way through the building process. The "default value" is merely a suggestion. This document makes use of several variables to address paths in a generic, but distinct way. They are not meant to be used via shell, but for human parsing. No program of the x2go suite actually uses them for anything. You may "set" them to whatever value you want to (in your head), just don't change them half-way through the building process. The "default value" is merely a suggestion.
Line 14: Line 61:
 | $X2GO_DIST_INST | Installation directory of x2goclient dependencies | $X2GO_DIST_SRC/inst | | $X2GO_DIST_INST | Installation directory of x2goclient dependencies | $X2GO_DIST_SRC/inst |
 | $NX_BASE_DIR | Common NX directory | /usr/src/NX | | $NX_BASE_DIR | Common NX directory | /usr/src/NX |
-| $NX_LIBS_SRC | Directory containing the NX libs source tree | $NX_BASE_DIR/nx-libs-git |+| $NX_LIBS_SRC | Directory containing the NX libs source tree | $NX_BASE_DIR/nx-libs-src |
 | $NX_DIST_SRC | Directory containing NX libs dependencies source trees | $NX_BASE_DIR/dist | | $NX_DIST_SRC | Directory containing NX libs dependencies source trees | $NX_BASE_DIR/dist |
 | $NX_DIST_INST | Installation directory of NX libs dependencies | $NX_DIST_SRC/inst | | $NX_DIST_INST | Installation directory of NX libs dependencies | $NX_DIST_SRC/inst |
  
-===== Get the sources =====+==== Get the sources ====
  
-==== x2goclient ====+=== x2goclient ===
  
 Prepare $X2GO_BASE_DIR if need be. Prepare $X2GO_BASE_DIR if need be.
Line 43: Line 90:
  
  
-==== NX libraries ====+=== NX libraries ===
  
 Prepare $NX_BASE_DIR. Prepare $NX_BASE_DIR.
Line 55: Line 102:
  
 <code> <code>
-# git clone git://code.x2go.org/nx-libs.git nx-libs-git+$ wget http://code.x2go.org/releases/source/nx-libs/nx-libs-<version>-lite.tar.gz 
 +$ tar xzf nx-libs-<version>-lite.tar.gz 
 +$ mv nx-libs-<version> nx-libs-src
 </code> </code>
  
Line 65: Line 114:
 </code> </code>
  
-===== Dependencies =====+==== Dependencies ====
  
   * for optional sound support: PulseAudio   * for optional sound support: PulseAudio
Line 76: Line 125:
     * nx-binaries     * nx-binaries
  
-==== Qt4 ====+=== Qt4 ===
  
 Qt4 is a hard dependency. Qt4 is a hard dependency.
Line 83: Line 132:
 If you decide to build from source, follow these instructions, else skip to the NX part. If you decide to build from source, follow these instructions, else skip to the NX part.
  
-=== Download ===+== Download ==
  
 Download the source package from [[http://qt.nokia.com/downloads/downloads#qt-lib|the official Qt site]] (.tar.gz recommended.) Download the source package from [[http://qt.nokia.com/downloads/downloads#qt-lib|the official Qt site]] (.tar.gz recommended.)
Line 97: Line 146:
 </code> </code>
  
-=== Configuration ===+== Configuration ==
  
 Configure the qt source tree. We will disable unused stuff and build universal (for deployment.) Configure the qt source tree. We will disable unused stuff and build universal (for deployment.)
Line 114: Line 163:
  
  
-=== Building ===+== Building ==
  
 Run make and pray. Pray strongly. To whomever or whatever you want, just pray. Run make and pray. Pray strongly. To whomever or whatever you want, just pray.
Line 129: Line 178:
  
  
-==== libssh ====+=== libssh ===
  
-=== Dependencies ===+== Dependencies ==
  
 libssh uses CMake to configure the source build. Please download and install CMake from [[http://cmake.org/cmake/resources/software.html|the official CMake repository]]. libssh uses CMake to configure the source build. Please download and install CMake from [[http://cmake.org/cmake/resources/software.html|the official CMake repository]].
  
-=== Download ===+== Download ==
  
 Download the source package from [[http://www.libssh.org/files/|the libssh repository]]. Note that currently 0.5.2 is buggy, at least on Mac OS X. Please use 0.5.1 for now. Download the source package from [[http://www.libssh.org/files/|the libssh repository]]. Note that currently 0.5.2 is buggy, at least on Mac OS X. Please use 0.5.1 for now.
Line 148: Line 197:
 </code> </code>
  
-=== Configuration ===+== Configuration ==
  
 Create a build subdir. Create a build subdir.
Line 165: Line 214:
 </code> </code>
  
-=== Building ===+== Building ==
  
 Build the source. Build the source.
Line 188: Line 237:
 **Run the following commands as a regular, non-root user.  You'll need the root password to install them.** **Run the following commands as a regular, non-root user.  You'll need the root password to install them.**
  
-**1. FIXME -> nxproxy has to be installed from nx-libs.git +**1.  
-Install nxproxy from git**+Install nxproxy from the nx-libs-lite tarball**
  
 <code> <code>
-git clone git://code.x2go.org/nxproxy +wget http://code.x2go.org/releases/source/nx-libs/nx-libs-<version>-lite.tar.gz 
-cd nxproxy +tar xzf nx-libs-<version>-lite.tar.gz 
-autoconf  +cd nx-libs-<version> 
-$ ./configure --prefix=/usr +$ PREFIX=/usr make
-make+
 $ su -c "make install" $ su -c "make install"
 </code> </code>
wiki/development/build-howto-macos/x2goclient.txt · Last modified: 2015/08/27 01:43 by ionic