默认情况下使用 g++ 而不是 arm 编译器进行构建?
Posted
技术标签:
【中文标题】默认情况下使用 g++ 而不是 arm 编译器进行构建?【英文标题】:Build is happening by default with g++ instead of arm compiler? 【发布时间】:2015-08-19 09:07:24 【问题描述】:我遇到了一个非常奇怪的问题。我正在使用 ARM 编译器构建我的 ARM 源代码。我修改了 makefile 中的 CXX 字段以使用 arm-linux-gnueabihf-g++ 而不是 g++ 构建,但在构建它时仍然使用 g++。有人可以在这里帮助我吗?我的 makefile 有以下条目
CXX = g++
我将它修改为如下所示
CXX = arm-linux-gnueabihf-g++
不应该使用 arm-linux-gnueabihf-g++ 而不是 g++ 进行构建吗?
【问题讨论】:
您需要提供整个 Makefile 以获得明确的答案。 好问题!我只有一条线,我们应该决定看不见的休息做什么!哇!您能否提供您的 Makefile,以便我们了解发生了什么?谢谢!如果你的食谱不使用 CXX,它永远不会起作用。如果你有一个子 Makefile,你必须导出你的变量。如果...对不起,不,请提供您的 Makefile! 我将 CXX 标志值留为空白,但仍将 g++ 作为默认编译器 【参考方案1】:如果没有构建系统的其余部分,就不可能知道为什么会看到您所看到的内容,但这里有一些一般性建议:
不要编辑makefile;在命令行传递你想要的值:
make CXX=arm-linux-gnueabihf-g++ <whatever your normal args are>
命令行值会覆盖文件中设置的值,并且通常会传递给嵌套的 makefile 并覆盖所有其他可能使问题复杂化的令人困惑的东西。
如果这不起作用,请检查是否有 configure
脚本,或者您应该使用的其他东西。
【讨论】:
以上是关于默认情况下使用 g++ 而不是 arm 编译器进行构建?的主要内容,如果未能解决你的问题,请参考以下文章