在Windows上,我使用CodeSourcery的交叉編譯器套件交叉編譯ARM/linux程序。我使用mingw msys作爲我的命令解釋器,並且經常會破壞我的路徑和路徑名。例如,爲了建立我的計劃,我調用如何阻止mingw和msys在命令行中輸入的路徑名稱?
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
當然,我想/usr/lib/myrpath
逐字插入myprogram
可執行文件 - 在ARM Linux目標,我爲編制不使用MinGW的MSYS或。但這裏是最終進入它:
...
0x0000000f (RPATH) Library rpath: [C:/MinGW/msys/1.0/lib/myrpath]
...
不正是我想要的。如果我直接在cmd.exe命令行上調用gcc,我會在可執行文件中獲得正確的rpath。如果我在msys命令行上調用gcc,我會得到損壞的rpath。如果我使用cmd.exe命令行中的make運行的Makefile調用gcc,我仍然會得到一個損壞的rpath(!)
任何想法如何關閉這種惱人的行爲?
謝謝 - 該鏈接(啓發式)幫我「假了」 MinGW和通過不受干擾的方式獲取我的路徑。 –
錯誤!如果關閉,有一種方法可以切換。 http://stackoverflow.com/a/34386471/404615 –