[X2Go-Commits] page changed: wiki:development:build-howto-mswin:x2goclient

wiki-admin at x2go.org wiki-admin at x2go.org
Sun Feb 22 18:17:49 CET 2015


A page in your DokuWiki was added or changed. Here are the details:

Date        : 2015/02/22 17:17
Browser     : Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36
IP-Address  : 71.175.97.130
Hostname    : pool-71-175-97-130.phlapa.fios.verizon.net
Old Revision: http://wiki.x2go.org/doku.php/wiki:development:build-howto-mswin:x2goclient?rev=1424623030
New Revision: http://wiki.x2go.org/doku.php/wiki:development:build-howto-mswin:x2goclient
Edit Summary: Overhaul the documentation on building and copying of 3rd-party libraries and binaries
User        : mikedep333

@@ -235,87 +235,14 @@
  It is available in [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]]. The current version is located at:
  <code>
  x2goclient-contrib\upx\3.91_bin\upx.exe
  </code>
- ==== X2Go Client package folder (scripted) ====
  
- To make X2Go Client usable on Windows, all libraries and components must be
in the some directory as where the 2 binaries are.
+ ===== Building nxproxy & OpenSSH (Optional) =====
  
- All of the files referenced below (OpenSSL-Win32 library) can be obtained from [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=summary|x2goclient-contrib.git]] on http://code.x2go.org
+ Building a new version nxproxy or OpenSSH is optional for non-official X2Go project builds.
  
- In the previous step, you chose either the ''dist'' or ''nsis/x2goclient'' folder. To this folder you have to add the following components:
- 
-   * libraries
-   * nxproxy with libraries
-   * Open SSH Server with libraries (optional)
-   * PuTTY
-   * VcXsrv
-   * PulseAudio (optional)
- 
- You can then install all of them, except for the X2Go Client binaries, by using the copy-deps-win32.bat script in the x2goclient source folder.
-   * 1st, do a find & replace in the script to replace the path to x2goclient-contrib with your own.
-   * 2nd, do a find & replace in the script to replace
the path to OpenSSL32-Win32 with your own.
- 
- Now run the script, telling it to copy to the ''dist'' folder
- <code>
- cd x2goclient
- copy-deps-win32.bat dist
- </code>
- or to the ''nsis/x2goclient'' folder
- <code>
- cd x2goclient
- copy-deps-win32.bat nsis/x2goclient
- </code>
- 
- 
- 
- 
- ==== X2Go Client package folder (manually) ====
- 
-   - Add x2goclient.exe (from the ''release/'' folder) to the ''dist/'' folder.
-   - Add x2gohelper.exe (from the ''release/'' folder) to the ''dist/'' folder.
-   - If you are using MinGW 4.4, add its libraries (copy from ''D:\MinGW\bin'')
-     * ''libgcc_s_dw2-1.dll''
-     * ''mingwm10.dll''
-   - If you are using MinGW 4.8, add its libraries (copy from ''D:\i686-4.8.2-release-posix-dwarf-rt_v3-rev3\mingw32\bin''). (Note that the inclusion of '\' character before the '+' character is to work around a horrible issue in dokuwiki; the actual filenames do not have the '\" character.)
-     * libgcc_s_dw2-1.dll
-     * libstdc\+\+-6.dll
-  
  * libwinpthread-1.dll
-   - Add OpenSSL libraries (copy from your OpenSSL installation directory)
-     * ''libeay32.dll''
-     * ''ssleay32.dll''
-   - libssh library ([[wiki:development:build-howto-mswin:x2goclient#installing_libssh|see above section for download link]])
-     * ''libssh.dll''
-   - libzip library (available [[http://code.x2go.org/releases/binary-win32/3rd-party/libzip/ |here on our site]]) (binaries originally from [[ftp://winkde.org/kde/ports/win32/releases/stable/latest/ | the KDE Windows project]] site)
-     * ''libzip.dll''
-   - zlib library for libzip (available [[http://code.x2go.org/releases/binary-win32/3rd-party/zlib/ |here on our site]]) (binaries originally from [[ftp://winkde.org/kde/ports/win32/releases/stable/latest/ | the KDE Windows project]] site )
-     * ''libz.dll''
-   - zlib library for libssh (available [[http://code.x2go.org/releases/binary-win32/3rd-party/zlib/ |here on our site]]) (binaries originally from [[http://www.zlib.net/ |
the zlib project]] site)
-     * ''zlib1.dll''
-   - If you want to use X2Go Client on older versions of Windows, you should put the "Microsoft Visual C\+\+ Redistributable 2008 Package"'s dll files into your X2Go Client package directory. (Originally downloaded from the [[http://www.microsoft.com/en-us/download/details.aspx?id=29|Microsoft download site]]).
-     * ''Microsoft.VC90.CRT.manifest''
-     * ''msvcm90.dll''
-     * ''msvcp90.dll''
-     * ''msvcr90.dll''
- ===== Build/Add nxproxy with libraries =====
- 
- The latest version is available in [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]] under the cygwin folder. This includes its libraries.
- 
- If you ran copy-deps-win32.bat, nxproxy has already been copied over.
- 
- You can download older versions, including their libraries, from here [[http://code.x2go.org/releases/binary-win32/3rd-party/nxproxy|here]].
- 
-   - Copy the nxproxy binaries directly into the ''dist/''
folder (built from [[http://code.x2go.org/gitweb?p=nx-libs.git;a=summary|nx-libs.git]] on http://git.x2go.org):
-     * ''cygXcomp.dll''
-     * ''cygjpeg-8.dll''
-     * ''cygstdc\+\+-6.dll''
-     * ''cygz.dll''
-     * ''cyggcc_s-1.dll''
-     * ''cygpng-3.dll''
-     * ''cygwin1.dll''
-     * ''nxproxy.exe''
- 
- If you want to build nxproxy from source, you need install and configure Cygwin first.
+ Official X2Go project builds usually rebuild nxproxy and OpenSSH if there are desired updates to those components, or if the cygwin libraries have been updated.
  
  ==== Installing Cygwin ====
  
  Download and start the [[http://cygwin.com/setup.exe|Cygwin installer]]
@@ -338,8 +265,18 @@
    * ''zlib-devel''
    * ''wget''
  
  <note tip>By installing the ''libjpeg-devel'' package, you are now installing [[https://cygwin.com/ml/cygwin-announce/2014-06/msg00004.html|libjpeg-turbo]] instead of the legacy libjpeg . The same applies for the dependency ''libjpeg8'' package, which
provides the cygjpeg-8.dll file that you will copy later.</note>
+ 
+ For building of OpenSSH Server, you will also need::
+   *libedit
+   *libedit-devel
+   *libkrb5-devel
+   *libncurses-devel
+   *openssl-devel
+   *patch
+ 
+ For openssh you should install both, binary and source packages (toggle "Src" checkbox beside of package name). Source package will be installed in /usr/src directory in your Cygwin installation.
  
  If you are updating the X2Go Windows build VM, X2Go-WinBuilder, install these packages too:
    * ''bashdb''
    * ''bash-completion''
@@ -374,8 +311,9 @@
    * ncurses (select source for: libncurses-devel)
    * openssh (source, but not binary)
    * openssl
    * zlib (select source for: zlib-devel)
+ 
  ==== Building nxproxy ====
  
    * Open a cygwin shell and change to your build directory. In this example d:\Build will be used
  <code>
@@ -481,29 +419,10 @@
      * ''libXcomp.a''
  <code>
  $ cd /usr/bin
  $ cp --preserve=time -t
/cygdrive/d/Build/cygwin-2014-09-16/ cyggcc_s-1.dll cygjpeg-8.dll cygpng15-15.dll cygstdc++-6.dll cygwin1.dll cygz.dll  </code>
- ===== Open SSH Server =====
  
- X2Go Client for Windows uses a modified Cygwin Open SSH Server for file sharing.
- 
- The latest version is available in [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]] under the cygwin folder.
- 
- If you ran copy-deps-win32.bat, nxproxy has already been copied over.
- 
- You can download older versions from [[http://code.x2go.org/releases/binary-win32/3rd-party/openssh-server|here]].
- 
- If you want to build it from source, you should [[wiki:development:build-howto-mswin:x2goclient/#installing_cygwin|install Cygwin]] first.
- 
- After that run Cygwin installer (setup.exe), navigate to "Select Packages" page and install additional packages, you need to build Open SSH Server:
-   *libedit
-   *libedit-devel
-   *libkrb5-devel
-   *libncurses-devel
-   *openssl-devel
-  
*patch
- 
- For openssh you should install both, binary and source packages (toggle "Src" checkbox beside of package name). Source package will be installed in /usr/src directory in your Cygwin installation.
+ ==== Building OpenSSH Server ====
  
  Copy the source folder (downloaded and extracted from a tarball by cygwin) to your build directory. In this example d:\Build will be used
  <code>
  $cp -pr /usr/src/openssh-6.1.1p1-3-src /cygdrive/d/Build/
@@ -534,8 +453,10 @@
  $strip *.exe
  </code>
  
  <note>The command above is based on the command that Cygwin uses for their official builds, but with certain changes in order to eliminate unnecessary dependencies. Eliminating unnecessary dependencies decreases how frequently X2Go Client for Windows needs to rebuilt in order to include security patches for those dependencies.</note>
+ 
+ ==== Copying OpenSSH Server binaries ====
  
  Open SSH Server binaries are ready. Now you can copy them in to the installation directory of
x2goclient:
  
    *sftp.exe
@@ -562,9 +483,120 @@
  
  Some of these libraries are also used by nxproxy. Open SSH Server and nxproxy should be built using same version of Cygwin.
  
  <note>This section needs to be updated for the .csv file that lists Cygwin packages and versions, and for the zip files on http://code.x2go.org/releases/ that contain pre-built binaries.</note>
- ===== PulseAudio =====
+ 
+ 
+ ===== Copying 3rd-party libraries and components =====
+ 
+ ==== Explanation ====
+ 
+ To make X2Go Client usable on Windows, all libraries and components must be in the some directory as where the 2 binaries are.
+ 
+ All of the files referenced below (OpenSSL-Win32 library) can be obtained from [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=summary|x2goclient-contrib.git]] on http://code.x2go.org
+ 
+ In the previous step, you chose either the ''dist'' or ''nsis/x2goclient'' folder. To this folder you have to add the following components:
+ 
+   * libraries
+   *
nxproxy with libraries
+   * Open SSH Server with libraries (optional)
+   * PuTTY
+   * VcXsrv
+   * PulseAudio (optional)
+ 
+ ==== Scripted Copying ====
+ 
+ You can then install all of them, except for OpenSSL-Win32, by using the ''copy-deps-win32.bat'' script in the x2goclient source folder.
+ 
+ The scripted approach is limited to MinGW 4.8.
+ 
+ 1st, clone [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=summary|x2goclient-contrib.git]] on http://code.x2go.org if you haven't already done so.
+ 
+ 2nd, update the ''copy-deps-win32.bat'' script.
+   * Do a find & replace in the script to replace the path to x2goclient-contrib with your own.
+   * Do a find & replace in the script to replace the path to OpenSSL32-Win32 with your own.
+ 
+ Now run the script, telling it to copy to the ''dist'' folder
+ <code>
+ cd x2goclient
+ copy-deps-win32.bat dist
+ </code>
+ or to the ''nsis/x2goclient'' folder
+ <code>
+ cd x2goclient
+ copy-deps-win32.bat nsis/x2goclient
+ </code>
+

+ ==== Manual Copying ====
+ 
+ === Libraries ===
+ 
+   - If you are using MinGW 4.4, add its libraries (copy from ''D:\MinGW\bin'')
+     * ''libgcc_s_dw2-1.dll''
+     * ''mingwm10.dll''
+   - If you are using MinGW 4.8, add its libraries (copy from ''D:\i686-4.8.2-release-posix-dwarf-rt_v3-rev3\mingw32\bin''). (Note that the inclusion of '\' character before the '+' character is to work around a horrible issue in dokuwiki; the actual filenames do not have the '\" character.)
+     * ''libgcc_s_dw2-1.dll''
+     * ''libstdc\+\+-6.dll''
+     * libwinpthread-1.dll
+   - Add OpenSSL libraries (copy from your OpenSSL installation directory)
+     * ''libeay32.dll''
+     * ''ssleay32.dll''
+   - libssh library ([[wiki:development:build-howto-mswin:x2goclient#installing_libssh|see above section for download link]])
+     * ''libssh.dll''
+   - libzip library (available [[http://code.x2go.org/releases/binary-win32/3rd-party/libzip/ |here on our site]]) (binaries originally from
[[ftp://winkde.org/kde/ports/win32/releases/stable/latest/ | the KDE Windows project]] site)
+     * ''libzip.dll''
+   - zlib library for libzip (available [[http://code.x2go.org/releases/binary-win32/3rd-party/zlib/ |here on our site]]) (binaries originally from [[ftp://winkde.org/kde/ports/win32/releases/stable/latest/ | the KDE Windows project]] site )
+     * ''libz.dll''
+   - zlib library for libssh (available [[http://code.x2go.org/releases/binary-win32/3rd-party/zlib/ |here on our site]]) (binaries originally from [[http://www.zlib.net/ | the zlib project]] site)
+     * ''zlib1.dll''
+   - If you want to use X2Go Client on older versions of Windows, you should put the "Microsoft Visual C\+\+ Redistributable 2008 Package"'s dll files into your X2Go Client package directory. (Originally downloaded from the [[http://www.microsoft.com/en-us/download/details.aspx?id=29|Microsoft download site]]).
+     * ''Microsoft.VC90.CRT.manifest''
+     * ''msvcm90.dll''
+     *
''msvcp90.dll''
+     * ''msvcr90.dll''
+ 
+ === nxproxy ===
+ 
+ The latest version is available in [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]] under the cygwin folder. This includes its libraries.
+ 
+ You can download older versions, including their libraries, from here [[http://code.x2go.org/releases/binary-win32/3rd-party/nxproxy|here]].
+ 
+   - Copy the nxproxy binaries directly into the ''dist/'' folder (built from [[http://code.x2go.org/gitweb?p=nx-libs.git;a=summary|nx-libs.git]] on http://git.x2go.org):
+     * ''cygXcomp.dll''
+     * ''cygjpeg-8.dll''
+     * ''cygstdc\+\+-6.dll''
+     * ''cygz.dll''
+     * ''cyggcc_s-1.dll''
+     * ''cygpng-3.dll''
+     * ''cygwin1.dll''
+     * ''nxproxy.exe''
+ 
+ === OpenSSH server ===
+ 
+ X2Go Client for Windows uses a modified Cygwin OpenSSH Server for file sharing.
+ 
+ The latest version is available in
[[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]] under the cygwin folder.
+ 
+ You can download older versions from [[http://code.x2go.org/releases/binary-win32/3rd-party/openssh-server|here]].
+ 
+ The OpenSSH binaries that are actually needed are:
+ 
+   *sftp.exe
+   *sftp-server.exe
+   *ssh-keygen.exe
+   *sshd.exe
+ 
+ The other files needed are:
+   *cygcrypto-1.0.0.dll
+   *cygedit-0.dll
+   *cyggcc_s-1.dll
+   *cygncursesw-10.dll
+   *cygssp-0.dll
+   *cygwin1.dll
+   *cygz.dll
+   *sh.exe (renamed from dash.exe)
+ 
+ === PulseAudio ===
  
  The latest version of PulseAudio for Windows (5.0) is available in [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]] under the pulse folder.
  
  If you ran copy-deps-win32.bat, PulseAudio has already been copied over.
@@ -574,9 +606,9 @@
  You can download older Windows builds here
[[http://code.x2go.org/releases/binary-win32/3rd-party/pulse|here]].
  
  Even older Windows builds are available from [[http://www.freedesktop.org/wiki/Software/PulseAudio/Ports/Windows/Support|project site]] and the above link.
  
- ===== VcXsrv - XP Compatible =====
+ === VcXsrv - XP Compatible ===
  
  The latest version is available in [[http://code.x2go.org/gitweb?p=x2goclient-contrib.git;a=tree;hb=HEAD|x2goclient-contrib.git]] under the VcXsrv folder.
  
  If you ran copy-deps-win32.bat, VcXsrv has already been copied over.
@@ -622,12 +654,12 @@
    *vcxsrv-version.txt
  And specify the version string of VcXsrv in it. The version string should be the only contents of the file. For example:
  
  1.15.2.2+xp-vc2013+x2go1
- ===== PuTTY =====
+ === PuTTY ===
  
  you can download PuTTY for Windows from [[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html|project site]]. Building PuTTY from source is not the part of this Howto
  
  These are the only binaries you need
from PuTTY. Copy them directly into the ''dist/'' folder.
  
    *plink.exe
    *pscp.exe



-- 
This mail was generated by DokuWiki at
http://wiki.x2go.org/



More information about the x2go-commits mailing list