Sur Windows, je suis en train de compiler un programme pour ARM/Linux en utilisant la suite de compilateurs croisés de CodeSourcery. J'utilise MinGW MSYS comme mon interpréteur de commandes, et très souvent il va déformer mes chemins et noms de chemins. Par exemple, pour construire mon programme, j'invoque
arm-none-linux-gnueabi-gcc.exe -Wall -g \
-Wl,--dynamic-linker=/usr/lib/myrpath/ld-linux.so.3 \
-Wl,-rpath=/usr/lib/myrpath \
-I../targetsysroot/usr/include \
myprogram.c -o myprogram
Bien sûr, je veux que /usr/lib/myrpath
soit inséré textuellement dans l'exécutable myprogram
- la cible ARM Linux pour laquelle je compile n'utilise pas MinGW ou MSYS. Mais voici ce qui finit par y aller :
...
0x0000000f (RPATH) Rpath de la bibliothèque: [C:/MinGW/msys/1.0/lib/myrpath]
...
Pas exactement ce que je voulais. Si j'invoque GCC sur la ligne de commande cmd.exe directement, j'obtiens le bon rpath dans l'exécutable. Si j'invoque GCC sur la ligne de commande MSYS, je reçois le rpath déformé. Si j'invoque GCC avec un Makefile qui est exécuté avec make à partir de la ligne de commande cmd.exe, je reçois toujours un rpath déformé (!)
Auriez-vous des idées sur comment je pourrais désactiver ce comportement agaçant?