如何通过修改命令行中给出的路径名来停止MinGW和MSYS
在Windows上,我正在使用CodeSourcery的交叉编译器套件为ARM / Linux交叉编译程序。我使用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(!) 有什么想法可以关闭这种令人讨厌的行为吗?