Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menyusun Silang untuk Raspberry Pi di Ubuntu?

Bagaimana untuk Menyusun Silang untuk Raspberry Pi di Ubuntu?

Susan Sarandon
Susan Sarandonasal
2024-11-17 07:22:03220semak imbas

How to Cross-Compile for Raspberry Pi on Ubuntu?

Kompilasi Silang untuk Raspberry Pi pada Ubuntu

Untuk mendayakan penyusunan silang untuk Raspberry Pi pada Ubuntu, anda perlu memasang pakej prasyarat berikut:

apt-get install git rsync cmake libc6-i386 lib32z1 lib32stdc++6

Dapatkan Rantaian Alat

Dalam direktori rumah anda, cipta folder bernama raspberrypi dan gunakan Git untuk memuat turun rantai alat:

git clone git://github.com/raspberrypi/tools.git

Pilih Pengkompil

Pilih rantai alat gcc-linaro-arm-linux-gnueabihf-raspbian dalam folder raspberrypi/tools.

Tambah Pengkompil pada PATH Anda

Edit fail .bashrc dan tambah baris berikut:

export PATH=$PATH:$HOME/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin

Muat Perubahan PATH

Mulakan semula sesi terminal anda atau jalankan . ~/.bashrc untuk menggunakan pengubahsuaian PATH.

Sahkan Pengkompil

Laksanakan arm-linux-gnueabihf-gcc -v untuk mengesahkan pemasangan pengkompil. Ia harus memaparkan maklumat tentang rantai alat yang dipilih.

Membuat Konfigurasi Rootfs dan CMake

Untuk menangani isu kehilangan perpustakaan kongsi, ikut langkah tambahan ini:

  1. Buat folder rootfs dalam raspberrypi anda direktori.
  2. Gunakan rsync untuk menyalin direktori /lib dan /usr daripada Raspberry Pi anda ke direktori rootfs pada mesin Ubuntu anda:

    rsync -rl --delete-after --safe-links [email protected]:/{lib,usr} $HOME/raspberrypi/rootfs
  3. Buat CMake fail konfigurasi bernama pi.cmake dalam raspberrypi folder:
SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_SYSTEM_VERSION 1)
SET(CMAKE_C_COMPILER $ENV{HOME}/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-gcc)
SET(CMAKE_CXX_COMPILER $ENV{HOME}/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++)
SET(CMAKE_FIND_ROOT_PATH $ENV{HOME}/raspberrypi/rootfs)
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

Menyusun Silang dengan CMake

Untuk menyusun silang atur cara anda menggunakan CMake, nyatakan pembolehubah CMAKE_TOOLCHAIN_FILE apabila menggunakan CMake:

cmake -D CMAKE_TOOLCHAIN_FILE=$HOME/raspberrypi/pi.cmake ...

Atas ialah kandungan terperinci Bagaimana untuk Menyusun Silang untuk Raspberry Pi di Ubuntu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn