Cross compiling C++ project, Relocations in generic ELF (EM: 3)

前端 未结 2 493
再見小時候
再見小時候 2021-02-09 01:38

I\'ve been working on a c++ project for a while now, but would like to port it over to my arm processor. I already have all of my cross-compile tools (I\'m using CodeSourcery)

2条回答
  •  名媛妹妹
    2021-02-09 02:10

    The problem is you've set your makefile up to link with the new g++ but you haven't changed the compiler you're using to build the objects in the first place.

    The easiest way to fix this is to set environment CXX to the next compiler, i.e.

    export CXX=/home/matt/CodeSourcery/bin/arm-none-linux-gnueabi-g++
    

    or just set it for a given make by adding CXX=... to the command line.

    You'll need to make clean first but you'll then use the correct compiler for both the compile and link.

    You could also specify a new how-to-compile-C++ files rule in your makefile to specify the new compiler but the environment variable is easier:

    .cc.o:
            /home/.../g++ $(CPPFLAGS) $(CXXFLAGS) -c
    

提交回复
热议问题