使用自定义gcc位置构建包

问题描述 投票:0回答:1

我试图通过Makefile用gcc4.9构建c ++包。默认情况下,系统始终使用系统编译器(/ usr / bin / g ++),即gcc4.5。要使用4.9我已将其添加为我的包的可靠性。

要使用GCC的自定义位置,我在Makefile中设置了以下命令

override CXX := $(shell  {some path})/gcc-rhel5/bin/g++
override CC := $(shell  {some-path})/gcc-rhel5/bin/g++

在这个包使用上面提到的g ++路径构建之后,但我得到了以下异常。

/ cc1plus:加载共享库时出错:libmpc.so.3:无法打开共享对象文件:没有这样的文件或目录

我该如何解决这个问题。

c++ gcc makefile
1个回答
0
投票

假设您拥有自定义版本的gcc的完整构建工具。只需像这样执行make命令。请删除您添加到makefile的行。您不应该硬编码编译器路径。

$ cd yourproject/
$ PATH={some path}/gcc-rhel5/bin LD_LIBRARY_PATH={some path}/gcc-rhel5/lib make

注意:您需要使用编译器的完整构建工具来执行此操作,还需要与您的自定义gcc版本对应的共享库。即你不能只复制bin文件,你应该有一个像这样的目录结构....

-gcc-rhel5/
--bin/
---gcc
---g++
---make
---ld
--lib/
---libmpc.so.3
---libc.so.6
--(some other files)
© www.soinside.com 2019 - 2024. All rights reserved.