本文檔描述如何對rsyslog進行交叉編譯,使其可以工作在zynq設備(armv7)上。研發人員可以根據該文檔將相關源碼包及編譯過程加入到自動編譯環境中。
armv7交叉編譯rsyslog
目錄
- armv7交叉編譯rsyslog
- 範圍
- 依賴庫列表
- 編譯libestr
- 獲取源碼
- 編譯
- 編譯libfastjson
- 獲取源碼
- 編譯
- 編譯zlib
- 獲取源碼
- 編譯
- 編譯libuuid
- 獲取源碼
- 編譯
- 編譯libgpg-error
- 獲取源碼
- 編譯
- 編譯libgcrypt
- 源碼獲取
- 編譯
- 編譯curl
- 源碼獲取
- 編譯
- 編譯rsyslog
- 源碼獲取
- 編譯
範圍
本文檔描述如何對rsyslog進行交叉編譯,使其可以工作在zynq設備(armv7)上。研發人員可以根據該文檔將相關源碼包及編譯過程加入到自動編譯環境中。
依賴庫列表
- libestr-0.1.11
- libuuid-1.0.3
- libfastjson-0.99.8
- libgcrypt-1.8.7
- libgpg-error-1.39
- curl-7.74.0
- zlib-1.2.11
編譯libestr
獲取源碼
wget http://libestr.adiscon.com/files/download/libestr-0.1.11.tar.gz
編譯
tar -xvf libestr-0.1.11.tar.gz
cd libestr-0.1.11/
#僅安裝庫文件到目錄下
./configure --host=arm-linux-gnueabihf --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib
make
make install
cd -
編譯libfastjson
獲取源碼
wget http://download.rsyslog.com/libfastjson/libfastjson-0.99.8.tar.gz
編譯
tar -xvf libfastjson-0.99.8.tar.gz
cd libfastjson-0.99.8/
./configure --host=arm-linux-gnueabihf --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib
make
make install
cd -
編譯zlib
獲取源碼
#源碼地址:http://prdownloads.sourceforge.net/libpng/zlib-1.2.11.tar.xz?download
wget https://udomain.dl.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.xz
編譯
cd zlib-1.2.11/
export CC=arm-linux-gnueabihf-gcc
export LD=arm-linux-gnueabihf-ld
export AR=arm-linux-gnueabihf-ar
./configure --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib --includedir=/root/rsyslog/include
make
make install
cd -
unset CC
unset LD
unset AR
編譯libuuid
獲取源碼
#https://sourceforge.net/projects/libuuid/
wget https://nchc.dl.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz
編譯
tar -xvf libuuid-1.0.3.tar.gz
cd libuuid-1.0.3/
./configure --host=arm-linux-gnueabihf --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib
make
make install
cd -
編譯libgpg-error
獲取源碼
wget https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.39.tar.bz2
編譯
tar -xvf libgpg-error-1.39.tar.bz2
cd libgpg-error-1.39/
./configure --host=arm-linux-gnueabihf --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib
make
make install
cd -
編譯libgcrypt
源碼獲取
wget https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.7.tar.bz2
編譯
tar -xvf libgcrypt-1.8.7.tar.bz2
cd libgcrypt-1.8.7/
./configure --host=arm-linux-gnueabihf --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib --with-libgpg-error-prefix=/tmp/rsyslog
make
make install
cd -
#解決rsyslog進行configure時報錯error: libgcrypt-config not found in PATH
export PATH=$PATH:/tmp/rsyslog/bin
編譯curl
源碼獲取
wget https://curl.se/download/curl-7.74.0.tar.gz
編譯
tar -xvf curl-7.74.0.tar.gz
cd curl-7.74.0/
./configure --host=arm-linux-gnueabihf
make
make install
cd -
編譯rsyslog
源碼獲取
wget https://www.rsyslog.com/files/download/rsyslog/rsyslog-8.2012.0.tar.gz
編譯
tar -xvf rsyslog-8.2012.0.tar.gz
cd cd rsyslog-8.2012.0/
./configure --host=arm-linux-gnueabihf --prefix=/tmp/rsyslog --libdir=/root/rsyslog/lib --bindir=/root/rsyslog/bin/ --sbindir=/root/rsyslog/bin/ PKG_CONFIG_PATH=/root/rsyslog/lib/pkgconfig CFLAGS="-I
/root/rsyslog/include"
make
make install
cd -
本文章為轉載內容,我們尊重原作者對文章享有的著作權。如有內容錯誤或侵權問題,歡迎原作者聯繫我們進行內容更正或刪除文章。