riscv-gnu-toolchain compilation chain and spike, pk installation and usage guide 1. Environment: Ubuntu18.04 2. Install dependency packages (needed for various compilations): $ sudo apt install autoconf automake autotools-dev curl python3 libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev 3. Differentiate between downloading riscv-gnu-toolchain and riscv-tools As for why we […]
Tag: gnu
The difference between cross-compiler arm-linux-gnueabi and arm-linux-gnueabihf
I have never figured out what the problem is with these two cross-compilers before, so I googled it and summarized it as follows. I hope it can help brothers who are as confused as me… 1) What are ABI and EABI ABI: Application Binary Interface (ABI) for the ARM Architecture In computers, an application binary […]
GNU Make
Overview of Make Themake utility automatically determines which pieces of a large program need to berecompiled, and issues commands to recompile them. To prepare to use make, you must write a file called the _makefile _that describes therelationships among files in your program and provides commands for updating each file. In a simple sentence: make […]
Add the modules in the gnuradio source code to make your own OOT module
Add the modules in the gnuradio source code to make your own OOT module (you cannot compile in the source code after installing the release version, but you don’t want to uninstall and then install the source code version) 1. Reasons for writing this article 2. The Gnuradio flow graph and related parameters are as […]
Ubuntu 18.04 source code compilation and installation of UHD and GNU Radio3.9
1 Install UHD 1.1 Update first sudo apt-get update 1.2 Installation dependencies My system is 18.04. The following are the installation dependencies corresponding to Ubuntu 18.04. Other system versions can be found in the official website link. sudo apt-get -y install git swig cmake doxygen build-essential libboost-all-dev libtool libusb-1.0-0 libusb-1.0-0-dev libudev-dev libncurses5-dev libfftw3-bin libfftw3-dev libfftw3-doc […]
GNU C inline assembly (AT&T syntax)
Transfer: http://www.linuxso.com/linuxbiancheng/40050.html Inline assembly provides the ability to create assembly language code within C or C++ code without having to link in additional libraries or programs. This approach gives the programmer more control over how the final program implements specific functions at the assembly language level. 1.Basic inline assembly 1)asm format GNU’s C compiler uses […]
GNU C/C++ __attributes__ Weak symbols and strong symbols in GCC
Recently, I was looking at some source code and came across some code that uses __attribute__ to modify the attributes of functions and variables. I don’t understand it very well, and I’m very embarrassed. Here’s a summary: GCC uses the __attribute__ keyword to describe the attributes of functions, variables and data types, which is used […]
Cross-compiler naming rules and detailed explanation (arm/gnu/none/linux/eabi/eabihf/gcc/g++)
When engaging in embedded development under Linux systems, a cross-compiler is definitely an essential tool. When used in many situations, you will see various compilation tools, such as: arm-linux-gcc arm-linux-gnueabi-gcc arm-none-linux-eabi-gcc arm-none-symbianelf-gcc arm-none-uclinuxeabi-gcc arm-none-linux-gnueabi-gcc arm-cortex_a8-linux-gnueabi-gcc mips-malta-linux-gnu-gcc Do you know why these compilation tools are called so, what their respective meanings are, and in what situations […]
Source code compilation of risc-v virtual machine and compiler riscv-gnu-toolchain and riscv-tools in ubuntu 22.04
1. Compile riscv-gnu-toolchain 1.1 Preparation environment $ sudo apt-get install autoconf automake autotools-dev curl python3 libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev 1.2 Download source code https://github.com/riscv-collab/riscv-gnu-toolchain git clone –recursive https://github.com/riscv-collab/riscv-gnu-toolchain.git 1.3 Compile elf tool cd riscv-gnu-toolchain/ for riscv64-unknown-elf-gcc: ./configure –prefix=/opt/riscv sudo make -j 1.4 Compilation linux tools […]
Use Sysbench to stress test MySQL and compare speed and latency under multi-threading; combine it with the gnuplot tool to produce graphs (very easy to use!)
Article directory 1. Download sysbench (1) Ubuntu under WSL: (2) CentOS: 2. Introduction to sysbench (1) Bundled benchmarks (2) Characteristics 3. MySQL test (1) Database preparation (2) Test read_write An example output (3) Test read_only (4) Test write_only (5) Clean up 4. gnuplot (1) Download (2) Use awk to process the test data generated by […]