
INTRODUCTION TO THE PCYNLITX IDE
C++ Automatic Build System Generation Technology
In this page, pcynlitx ide and automatic build system technology will be introduced.
THE FIRST STEP TO PCYNLITX IDE
The pcynlitx ide is an innovative integrated development environment which can generate build scripts automaticly. More specifically, the ide platform can determine the dependencies of each source file by means of a meta program. Therefore, differently from the existing technologies, on the pcynlitx build system generation, there is no need to specify each file and/or directory dependency and dependency lists are automatically created by the platform. Every components of the pcynlitx project is distributed with opensource software license.
What is new in pcynlitx version 2.0
The previous version of the pcynlitx ide ( the version 1.0 ) produces cybernetic thread libraries by meas of a metaprogramming platform. However, instead, in the next version of the pcynlitx ide ( the version 2.0 ), a C++ template library performing the same task has been developed. On the other hand, in addition to cybernetic thread management property, the pcynlitx ide version 2.0 includes automatic C++ build system construction technology.
Pcynlitx ide look and feel
The usage of the pcynlitx ide is very simple and it is not required any learning curve. A simple screenshoot which is taken from the graphical user interface of the pcynlitx IDE has been given in below. Although pcyniltx ide includes standart editing properties, it also includes automatic build system construction technology. In the following sections, automatic build system construction technology will be introduced.

PROPERTIES OF THE PCYNLITX IDE
Automatic C++ build system construction
Code editing
Cybernetic thread management library
OpenSource
PCYNLITX BUILD SYSTEM CONSTRUCTION TECHNOLOGY
In order to constract a C++ build system, the pcynlitx ide needs two different dependency information. The first one is internal dependencies. In fact, the internal dependencies specifies how the source files of the git repository dependent each others. More specifically, it specifies how the source files of the git repository must be orginized in order to perform a successful compliation. On the other hand, the external dependencies specifies the relation of the other libraries, source files and/or header files rather than the git repository itself. The dependencies on the inside of the git repository are determined by means of a meta program reads every source file on the git repository line by line. The meta program which reads the source files inside git repository will be explained on the following sections. The simple illustrations about internal and external dependencies are given below.
INTERNAL DEPENDENCIES

The source files which are parts of the project it seft.
EXTERNAL DEPENDENCIES
External source files
External libraries
External header files
The pcynlitx ide obtains the list of files which exist on the git repository and its relative path from the git version control system. Therefore, in order to use pcynlitx ide, git version control system must be installed and the current version only support git as a version control system.
HOW THE EXTERNAL DEPENDENCIES ARE OBTAINED BY PCYNLITX IDE
Pcynlitx IDE has a simple panel which is used in order to collect information about the directories including source files and libraries for a C++ projects. This panel is organized in a simple form. The user can select directories including source files and libraries from a selection menu. Then, the software developer can easily record every selection into a kind of description file with pressing a simple save button. In this process, the user performs selection about the following information.
- Where will be the construction directory of the C++ build system
- The root directory of the Git repository
- The C++ standart
- Build system type ( a selection between the classical make file system and CMAKE build system )
- External header file locations
- External source file locations
- External library locations
- The name of the libraries to be used
- The compiler options
- The linker obtions
- The name of the project
PCYNLITX DESCRIPTION PANEL
You can select the necessary information from the panel as a file and/or directory location ( the full operating system path ). Meanwhile, you can save your preferences. On the otherhand, if you select an already recorded dependency list, the information which has been recorded is automatically printed on the panel.

A sample screenshoot from the description panel of the pcynlitx ide
Software developer can easily record selections with save button. Similary, ever selection can be removed with clear button.
MANUEL DESCRIPTOR FILE CONSTRUCTION
However, the software developer don’t have to use the PCYNLITX GUI for build system construction. More spesifically, the pcynlitx ide consists of two different parts. The fist part is the kernel of build system generator and it is a executable binary file. The other part is its graphical user interface. It has been already mantioned that the user can build a kind of descriptor file including every dependency information by means of a panel ( the description panel of the pcynlitx ide ). In fact, this descriptor file has a very simple syntax and the developer can write the necessary information on an empty “txt” file using a simple rule. This rule ullustrated in below.
[KEY WORDS]{
Declerations
}
When the descriptor file is ready, the C++ build system can be generated using the GUI of the pcynlitx ide. On the other hand, the C++ build system can be generated directly over a shell or a terminal using the kernel of the pcynlitx ide if the descriptor file is ready. You can download an empty descriptor file from the link given in below.
THE TYPES OF BUILD SYSTEMS TO BE GENERATED
The selection of the build system type
Currently, the pcynlitx ide only supports two types of build system. The first one of them is the classical make file build system. In the classical make file build system construction, the ide builds a chunks of make file in a directory structure with a group of shell scripts. These scripts are onginized based on file dependencies. The other one is the classical CMAKE build system and the ide produces the “CMakeLists.txt” files. Then, the developer can easily generate the necessary CMAKE build system with the help of the configuration files. The developer can select the type of build system from the description panel. This menu is given in below.


PCYNLITX IDE HAS VERY MODERN AND ELEGANT GUI
Start to learn the basics

HOW PCYNLITX IDE KERNEL CAN READ THE FILE DEPENDENCIES
The kernel of the pcynlitx ide has a meta-program which can read the whole git repository line by line and extract dependency operations. The pcynlitx ide reads each source file existing on the target git repository and it extracts every file dependency based on information which is determined using some C++ language properties such as key words, scope resulution operators, function braces and/or operators etc. Meanwhile, this operation is performed using paralel multithreaded algorithms particularly written in C++. A simple code reading operation has been illustarated in below.
#include <sample>
#include <repo/test>
–> The code lines which the keyword “include” places is determined.
–> Then, the information between the baraces is extracted.
In this particular example, the header files which are named as sample and test are determined. After that, the pcynlitx tries to find the exact paths of the related files from the list of files existing on the git repository (The list of files existing on the repository is retrived using “git ls-files” command. This is a very simplified and short explanation for the pcynlitx ide meta-programming system. In fact, the real system is higly complex and it works on multithreaded software systems.
THE STRUCTURE OF THE PCYNLITX KERNEL
The Pcynlitx IDE has two main part. These are the graphical user interfase ( the GUI ) and the pcynlitx kernel. In fact, in addition to the classical editing operations, the graphical user interface is also responsible from the performing necessary interraction with the user. The gui collects the necessary informations from the user by means of frames and description panels. Then, the kernel, which is in fact an executable binary, receives the information collected by the gui.

Pcynlitx Software Systems
ABOUT
The pcynlitx project is carried out by Erkam Murat Bozkurt who is control systems engineer with M.Sc degree.
PRODUCTS
Pcynlitx IDE
Pcynlitx Multithreading Library
RESEARCH
The main purpose of the researches performed on pcynlitx project is to simplifiy software development with C++
LICIENCE
The software are distributed with apache software liciense
CONTACT
pcynlitx.help@gmail.com
erkam@pcynlitx.com
The source codes that are distributed on pcynlitx projects are copyrited on U.S copyright office. Copyright © 2025. All rights reserved.