Menu

Building CopperSpice

Roland Hughes

Building CopperSpice

Since this project is an enhancement or add-on library for use with CopperSpice, it makes sense that you need CopperSpice installed. If you want to happy key through the build scripts you also need to have CopperSpice installed in a specific location. Since you need full development, I always build from scratch.

It's how I do things and it makes life easier. If your SourceForge projects are using Git, isolating the directory trees also makes using GitKraken easier.

The CopperSpice code is found here.

The documentation on building and more importantly build dependencies for CopperSpice can be found here.

You can find a step-by-step setup tutorial with this blog series.

LS-CS

I have a port of CopperSpice you can find here. You want the RPM branch. That is where I have been doing all of my packaging work for Debian, RPM, etc. I do not recommend you build CopperSpice per the project build instructions because they do not install the software in any system approved locations. If you do sit through a build you will understand. Stuff is off in a target directory and the tree for that directory is not in a "system approved" order.

If you take a look at build-copperspice-deb.sh in this project and branch you will see this function

function create_debian_tree()
{
    if [ -d "$DEBIAN_DIR" ]; then
      rm -rf "$DEBIAN_DIR"
    fi

    mkdir -p "$DEBIAN_DIR"/DEBIAN
    mkdir -p "$DEBIAN_DIR"/usr/include/copperspice
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/bin
    #
    #  The plugins should always be here, not copied into the binary install dir
    #
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/platforms
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/printerdrivers
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/xcbglintegrations
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/mediaservices
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/playlistformats
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/iconengines
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/imageformats
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/pictureformats
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/copperspice/plugins/sqldrivers
    mkdir -p "$DEBIAN_DIR"/usr/"${LIB_DIR}"/cmake/CopperSpice
    mkdir -p "$DEBIAN_DIR"/usr/share/pkgconfig
    mkdir -p "$DEBIAN_DIR"/usr/share/doc/CopperSpice/license

}

That's how the files need to be distributed. If you are running a Debian or RPM based distribution you can find binary packages here. They are the ones I use for development and testing of this.


Related

Wiki: Building CsScintilla
Wiki: Home