arise-project / LibreCAD_dxf2pdf_standalone

Standalone extracted version of LibreCAD's dxf2pdf tool that could be run on Docker.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LibreCAD dxf2pdf standalone

Build Status

This project is a set of patches to LibreCAD source code for making dxf2pdf tool to be a standalone executable that does not require a running X server for its functioning (X libraries still must be present though).

Why

LibreCAD contains dxf2pdf tool which allows conversion of DXF files to PDF files from command line (console). That tool is a part of LibreCAD binary. As far as LibreCAD is a GUI application, running it in console mode still requires a running X server. This is not convenient if you want to run dxf2pdf on a remote server or in a Docker container. The goal of this project is to eliminate such a running X server dependency. The patches contain only minimum required changes of LibreCAD code for making dxf2pdf a standalone binary that does not require a running X server.

How to build

Note: this project uses CMake for building.

First, run prepare.sh script, this path local LibreCAD folder:

./prepare.sh

Or you can clone latest Librecad, but it may have compilation issues:

./prepare.sh latest

Optionally, you can specify a certain LibreCAD commit as a base for building, e.g:

./prepare.sh e469c5e8d6db3297330161f6e95fd79cac9e780d

The script will download LibreCAD sources, apply patches and copy CMakeLists.txt files to required places inside LibreCAD directory structure.

After that, create a directory for building (e.g.: build), cd to it and run cmake specifying the path to prepared LibreCAD directory. Then run make.

mkdir build
cd build
cmake ../LibreCAD
make

The resulting binary and required resources will be placed into OUT directory inside that building directory (e.g.: build/OUT).

About

Standalone extracted version of LibreCAD's dxf2pdf tool that could be run on Docker.

License:GNU General Public License v2.0


Languages

Language:C++ 62.0%Language:C 36.5%Language:QMake 0.6%Language:NSIS 0.4%Language:CMake 0.2%Language:Shell 0.1%Language:Redcode 0.1%Language:Batchfile 0.0%Language:HTML 0.0%Language:Roff 0.0%Language:CSS 0.0%