Basic Operations for Compiling with gcc and g++

Generally, compilation requires support from library files. For example, static library files and dynamic library files. On Windows, .lib files are static library files. .dll files are dynamic library files. The suffix for library files is as follows: The suffix for static library files is .a. The suffix for dynamic library files is .so. The … Read more

CFITSIO: An Open Source Library Based on C++

CFITSIO is a C language library for reading and writing FITS format files. FITS is a widely used data format in the field of astronomy, supporting not only images but also multi-dimensional arrays, tabular data, and more. CFITSIO simplifies the complexity of handling FITS files for programmers by providing a series of high-level functions, making … Read more

jsmn: A Powerful C Library for JSON Parsing

jsmn is a minimalistic and high-performance JSON parser written in C, particularly suitable for use in resource-constrained embedded environments. Its design goal is to maintain a very small code size and memory footprint while not relying on any external libraries. The table below summarizes the main features of jsmn for quick reference: Feature Category Details … Read more

How to Determine the Compiler Toolchain Used for Dynamic or Static Libraries in Linux

How to Determine the Compiler Toolchain Used for Dynamic or Static Libraries in Linux

I assisted a colleague with a problem and wrote a summary. The background is that code was ported from one Linux platform to another, and the two platforms have different compiler toolchains. Due to multiple collaborators, some libraries were not updated, and after porting, it was unclear which platform the library originated from. Some might … Read more

Creating Dynamic Library Plugins with QT C++

Creating Dynamic Library Plugins with QT C++

Detailed Steps and Considerations for Dynamic Library Plugin Projects (DLL) in Visual Studio, the following content provides a complete operational process and common problem solutions: 1. Create a Qt Class Library (DLL) Project 1. Start Visual Studio Open Visual Studio (recommended versions are 2019 or 2022, and the Qt Visual Studio Tools extension must be … Read more

Building Static and Dynamic Libraries with CMake

Building Static and Dynamic Libraries with CMake

Clickthe blue text Follow us In a previous article, we discussed how to use CMake to compile “hello world”. This article will cover building static and dynamic libraries. Link to the previous article: “CMake, a Build Tool for Large Projects” For an understanding of static and dynamic libraries, you can refer to the previous articles: … Read more

CMake Learning Summary – Part Three

CMake Learning Summary - Part Three

CMake Learning Summary (Part One) CMake Learning Summary (Part Two) About the Concepts of Dynamic Libraries and Static Libraries: Creating and Using Static Link Libraries in C Hello everyone, in the previous CMake article, we also left a question to implement at the end of the article, which is to put the source files in … Read more

CMake: How to Link Shared Libraries

CMake: How to Link Shared Libraries

ClickBlue Text Follow Us CMake is a simple build tool that saves us from designing complex Makefiles. The author has previously organized two related articles as follows: “CMake, a Build Tool for Large Projects” “CMake Static and Dynamic Library Construction” Today’s article continues to expand on the project discussed in the previous article. If you … Read more

Building And Using Library Files In CMake

Building And Using Library Files In CMake

Background CMake CMake is a cross-platform open-source build tool used to manage and automate the build process of software projects. CMake automatically generates build system files suitable for different compilers and operating systems, such as Makefile and Visual Studio solutions, based on the descriptions in the CMakeLists.txt file. Compilation Types Generally, programs can be compiled … Read more

Simple Python Calling C++ Program

Click on the above“Beginner Learning Vision” to select “Star” or “Pin” Important content delivered at the first time Methods for Python Calling C/C++ Programs Recently, while debugging, I encountered a situation where Python was running very slowly. Therefore, I researched methods to embed C++ programs in Python and recorded them for future reference. Generally, calling … Read more