Subsections

- - Running CINELERRA-GG:
  - CINELERRA-GG build on cygwin from source code:

##
Installing CINELERRA-GG

1. Download the tar file libxcb-bld.tar.bz2.

2. Install libxcb from the tar file – installs into /usr/local and requires approximately 21MB storage.

       tar -C /usr/local -xJf /path/libxcb-bld.tar.bz2

   The libxcb patch repairs an error (XIOError), which stops Cinelerra.

3. Download the tar file cygcin-bld.tar.bz2.

4. Install cygcin from the tar file - this installs into home directory. Note this is cygcin not cygwin. You must change the path below to the name of the path where you downloaded the tar file.

       cd
       tar -xJf /path/cygcin-bld.tar.bz2

This creates ˜/cygcin, a user build installation of CINELERRA-GG and requires approximately 400MB storage.

#### Running CINELERRA-GG:

You will need to start a cygwin desktop from the startup menu:

1. Start → Cygwin-X → Openbox

   You should start a console controlling terminal so that you can see program logging.

2. Start → Cygwin → Cygwin64 Terminal

   This opens a separate window that can survive a cygwin hang and bugs. Without these logs, it is much more difficult to use.

3. Type into that console controlling window, the following:

       export DISPLAY=:0.0

4. Change directories to where CINELERRA-GG is installed:

       cd /path/cygcin    (NOT cygwin)

5. Finally keyin:

       ./cin

   which starts up your 4 CINELERRA-GG windows.

The most noticeable difference from the Linux versions is that CINELERRA-GG seems to run very slowly on Windows 10. You must be very tolerant and patient to see this work. It can however exhibit astonishing speed when encoding. CINELERRA-GG has to be downgraded significantly due to lack of supported interfaces, codecs (for example h264/h265), and utilities. The only graphics driver is X11 and the only sound driver is pulseaudio. Almost all configurable omissions are applied to this build.

#### CINELERRA-GG build on cygwin from source code:

1. Download and install ffmpeg into /usr/local :

   download ffmpeg (currently 4.2.2)

       cd /tmp
       tar -xJf /path/ffmpeg-4.2.2.tar.bz2
       cd ffmpeg-4.2.2
       ./configure
       make -j
       make install

2. Download and install a patched libxcb:

       cd /tmp
       rm -rf libxcb-1.13/
       tar -xf /path/libxcb-1.13.tar.bz2
       cd libxcb-1.13/
       patch -p1 < /path/cinelerra-5.1/thirdparty/src/libxcb.patch1
          patching file configure.ac
          patching file src/xcb_in.c
       ./autogen.sh
       ./configure
       make -j
       make install

3. Download cinelerra-gg:

       cd /build_path/
       git clone git://git.cinelerra-gg.org/goodguy/cinelerra.git
       cd cinelerra-gg/cinelerra-5.1

4. Apply cygwin patch:

       patch -p2 < blds/cygwin.patch

5. Run the build with:

       ./blds/cygwin.bld

This produces a directory: /build_path/cinelerra-gg/cinelerra-5.1/bin which is used to create the cygcin archive.

Currently, the targets are not stripped and can be run from gdb. There is only very limited signal handler dmp file support. Running gdb from inside a desktop resident console (not a cygwin64 window) will hang cygwin (and cin) when it hits a breakpoint. You must run from an external console window to avoid this issue.