[ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

BitTorrent Sync, KODI, IPKG, NZBGet, pyLoad...
Répondre
Avatar du membre
QoolBox
Représentant de QNAP
Messages : 6258
Enregistré le : 02 janvier 2014
Professionnel : Oui
Localisation : France
Contact :

[ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

Message par QoolBox » 15 févr. 2015 19:52

Voici deux toolchains basés que j'ai créé sur un Debian 6 x86 (32bit) avec crosstool-ng en exlclusivité pour Cachem
ils vous permettrons de compiler les sources afin de les faire tourner sur vos NAS Qnap (Intel)

glibc 2.6.1, binutils 1.19.1 (x86)
glibc 2.11.1, binutils 2.22 (x64)

http://www.positiv-it.fr/QNAP/APP/i686- ... x86.tar.gz (GCC 4.3.6) --- 32 bits ---
http://www.positiv-it.fr/QNAP/APP/x86_6 ... x86.tar.gz (GCC 4.6.3) --- 64 bits ---

note d'installation :

installer votre Debian 6 x86 (i386)
créer un repertoire /data/x-tools
décompresser un des toolchain dans /data
créez dans votre $HOME (généralement /root) un fichier .bash_profile

remplissez le avec le code suivant :

Code : Tout sélectionner

HOST=i686-QNAP-linux-gnu
export HOST

TOOLCHAIN_PATH=/data/x-tools/i686-QNAP-linux-gnu
export TOOLCHAIN_PATH

OPT_PATH=/opt
export OPT_PATH

PATH=$PATH:$HOME/bin:${TOOLCHAIN_PATH}/bin:${TOOLCHAIN_PATH}/i686-QNAP-linux-gnu/bin
export PATH


## x86 = i686-QNAP-linux-gnu
## x64 = x86_64-QNAP-linux-gnu
remplacer i686-QNAP-linux-gnu par x86_64-QNAP-linux-gnu, le cas échéant si vous osuhaitez utilisez le CT en 64bit

compilez vos applications en utilisant le prefix suivant :

PREFIX=/share/CACHEDEV1_DATA/.qpkg/$NOM_DE_L_APPLI

en en host utiliser ${HOST}

example : (Generic mais peux varier selon les sources à compiler, le code doit être adapté aux sources et certaines fonctions peuvent nécessiter un export préalable)

Code : Tout sélectionner

CXX=${HOST}-g++                 \
LD=${HOST}-ld                   \
AS=${HOST}-as                   \
AR=${HOST}-ar                   \
CC=${HOST}-gcc \
PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig"  \
CFLAGS="-O2 -I$PREFIX/include" \
CXXFLAGS="-O2 -I$PREFIX/include"     \
CPPFLAGS="-O2 -I$PREFIX/include "     \
LDFLAGS="-L$PREFIX/lib -Wl,-rpath,$PREFIX/lib" \
./configure \
--prefix=$PREFIX \
--host=${HOST} \
--bindir=$PREFIX/bin \
--sbindir=$PREFIX/bin \
--libexecdir=$PREFIX/libexec \
--libdir=$PREFIX/lib \
--datadir=$PREFIX/share \
--datarootdir=$PREFIX/share \
--sysconfdir=$PREFIX/etc \
--sharedstatedir=$PREFIX/com \
--localstatedir=$PREFIX/var \
--includedir=$PREFIX/include \
--oldincludedir=$PREFIX/include \
--infodir=$PREFIX/share/info \
--localedir=$PREFIX/share/locale \


;)

Avatar du membre
FX Cachem
Site Admin
Messages : 8916
Enregistré le : 08 décembre 2013
Professionnel : Non
Localisation : Paris
Contact :

Re: [ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

Message par FX Cachem » 15 févr. 2015 22:03

Merci QoolBox :)
Blogueur sur Cachem et administrateur du Forum des NAS
NAS : Synology DS412+ | QNAP TS-470 Pro | ASUSTOR AS-302T

Tryphon
Padawan
Messages : 79
Enregistré le : 01 mars 2015

Re: [ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

Message par Tryphon » 09 sept. 2018 19:45

Bonjour,

J'utilise le Toolchain (kernel 4.2.8) dans un container exécutant Ubuntu 14.04 64 bits (kernel 4.2.8) en mode console. zlib ne semble pas être disponible dans le toolchain mais je l'ai installé (zlib1g et zlib1g-dev) dans Ubuntu.

Est-il possible d'utiliser zlib (installé dans Ubuntu) dans le fichier de compilation donné en exemple dans ce thread? En modifianf CFLAGS, LDFLAGS, ... ? J'aurai besoin d'être mis sur la voie?

Merci!
TS-559, TS653 8Go, NMP1000

Avatar du membre
QoolBox
Représentant de QNAP
Messages : 6258
Enregistré le : 02 janvier 2014
Professionnel : Oui
Localisation : France
Contact :

Re: [ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

Message par QoolBox » 09 sept. 2018 23:05

oui tu dois le compilé d'abord dans ton prefix

et le programme dont il depend tu dois lui indiquer les bons FLAGS

ex :

crosscompile ZLIB

Code : Tout sélectionner

wget https://zlib.net/zlib-1.2.11.tar.gz
tar -xvf zlib-1.2.11.tar.gz 

cd zlib-1.2.11

./configure --prefix=${PREFIX} --libdir=${PREFIX}/lib --sharedlibdir=${PREFIX}/lib --includedir=${PREFIX}/include
make install CC=${HOST}-gcc LDSHARED="${HOST}-gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map" CPP="${HOST}-gcc -E" AR=${HOST}-ar RANLIB=${HOST}-ranlib

et si un prog en autoconf ... en a besoin il ira le chercher pour le peux que tu parses anisi

Code : Tout sélectionner

CXX=${HOST}-g++     \
LD=${HOST}-ld  \
AS=${HOST}-as   \
AR=${HOST}-ar  \
CC=${HOST}-gcc \
PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig"  \
CFLAGS="-O2 -I$PREFIX/include" \
CXXFLAGS="-O2 -I$PREFIX/include"     \
CPPFLAGS="-O2 -I$PREFIX/include " \
LDFLAGS="-L$PREFIX/lib -Wl,-rpath,$PREFIX/lib"
./configure --prefix=$PREFIX --host=${HOST}
...
...
...

osimood
Messages : 18
Enregistré le : 26 septembre 2016

Re: [ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

Message par osimood » 14 sept. 2018 08:00

il semble que les fichiers soient inaccessibles. Merci
O

Avatar du membre
QoolBox
Représentant de QNAP
Messages : 6258
Enregistré le : 02 janvier 2014
Professionnel : Oui
Localisation : France
Contact :

Re: [ ToolChain x86 & x64 ] [ Debian6 x86 based ] Cross ToolChain - Qnap Source Compilator

Message par QoolBox » 14 sept. 2018 19:33

je vais regarder

Répondre

Retourner vers « Applications tierces »

Qui est en ligne

Utilisateurs parcourant ce forum : Bing [Bot] et 5 invités