c++ - 默认情况下使用 g++ 而不是 arm 编译器进行构建?

标签 c++ linux makefile arm

我遇到了一个非常奇怪的问题。我正在使用 ARM 编译器构建 ARM 源代码。我修改了 makefile 中的 CXX 字段以使用 arm-linux-gnueabihf-g++ 而不是 g++ 进行构建,但在构建时仍采用 g++。有人可以帮我吗?我的 makefile 有以下条目

CXX         = g++ 

我将其修改为如下所示

CXX         = arm-linux-gnueabihf-g++ 

不应该使用arm-linux-gnueabihf-g++而不是g++进行构建吗?

最佳答案

如果没有构建系统的其余部分,就不可能知道为什么会看到所看到的内容,但这里有一些一般性建议:

不要编辑 makefile;在命令行中传递您想要的值:

make CXX=arm-linux-gnueabihf-g++ <whatever your normal args are>

命令行值会覆盖文件内设置的值,并且通常会传递到嵌套的 makefile 并覆盖所有其他可能使问题复杂化的令人困惑的内容。

如果这不起作用,请检查是否有 configure 脚本或您应该使用的其他脚本。

关于c++ - 默认情况下使用 g++ 而不是 arm 编译器进行构建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32091105/

相关文章:

c++ - 通过套接字进行数据传输[TCP]如何在c/c++中打包多个整数并使用send()recv()传输数据?

linux - 设置 htaccess 以便除一个 IP 之外的所有人都被拒绝,但它需要身份验证

linux - 不同平台上的/proc/stat 列号

c - Makefile,链接库

string - Makefile字符串函数可以嵌套吗?

c++ - 是否有适用于 Xcode + Mac OS X 的 MSDN 开发人员库?

c++ - 单一所有者和多个引用的智能指针

linux - 为什么 mkfifo 的管道只在 ~25 秒后更新?

c++ - 用于在 header 更改时重新编译的简单 C 项目的示例 makefile

c++ - 为什么 ostream::operator<< 是 char 参数的全局函数?