2015-12-04 98 views
0

我想使用clang进行交叉编译。我发现它看起来很容易,我可以指定架构/包括等,就像我直接调用clang一样。

但是,我不想继续传递这些标志,我宁愿编译铿锵声,以便默认情况下会有这些标志。

也就是说,当我调用clang就像clang++ main.cpp我希望它变成clang++ -i686-w64-mingw32 -target-isystem=/usr/some/path main.cpp等,我该怎么做?铛 - 使用默认标志编译

+0

你可以这样做在几种方式中,比如使用'makefile',在你喜欢的任何shell中定义你的'alias',或者你可以编写自己的脚本文件,为编译器提供指定的选项,也许你有时间建立一些编译系统。 –

回答

1

您可以使用响应文件来做这种事情,也可以避免命令行对于您的操作系统来说太长。

喜欢的东西:

clang @target_cmds.inc -c foo.c 

可能会为你工作。

(除了一些构建系统两轮牛车或别名的早期评论,你也可以定义铛为你调用,做同样的事情包装脚本,例如:

#!/bin/sh 
clang -target i686-w64-mingw32 -target-isystem=/usr/some/path [email protected] 
0

改为使用makefile。或者在你的bashrc中创建一个别名。其他一切都是粗糙的黑客,我不会使用。