0

I'm trying to cross-compile Google Breakpad. I'm executing the following commands:

$ ./configure --prefix=/opt/breakpad CFLAGS="-Os" CC=PATH_ARM_COMPILER/arm-linux-gcc CXX=PATH_ARM_COMPILER/arm-linux-g++ --host=arm
$ make
$ make install

It generates and installs some files in the prefix path. In the include path it has:

|-common
|-google_breakpad
|-processor

but it should has:

|-client
|-common  
|-google_breakpad
|-processor
|-third_party

It seems to be a problem related to Breakpad client. What should be the right way to cross-compile Breakpad?

My host is a Ubuntu 18.04 x86-64, target ARM-32.

Jonathan Leffler
  • 730,956
  • 141
  • 904
  • 1,278
Jairo Reyes
  • 3
  • 1
  • 4

1 Answers1

0

I have reproduced your problem on my side. In fact, the issue is related to --host compilation flag.
Breakpad documentation shows that:

when building on Linux it will also build the client libraries.

So, In order to get the client binaries and headers, you should use the correct compiler prefix.
For example if you are using the GNU cross compiler arm-linux-gnueabihf-gcc, the --host flag value should be arm-linux-gnueabihf.
In your case (arm-linux-gcc) try to change your configure command as following:

./configure --prefix=/opt/breakpad CFLAGS="-Os" CC=PATH_ARM_COMPILER/arm-linux-gcc CXX=PATH_ARM_COMPILER/arm-linux-g++ --host=arm-linux