Build wxPython on arm64 architecture

Hello,
currently we are trying to build the latest git sources on a arm64 device running

Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial

All prerequisites, as mentioned on https://github.com/wxWidgets/Phoenix, have been installed.
First run of python build.py dox etg sip build failed

ERROR: Could not execute /mnt/usb_disc/repos/phoenix/bin/doxygen-1.8.8-linux, got “[Errno 8] Exec format error”
Set DOXYGEN in the environment to use a local build of doxygen instead

So we installed doxgen via apt-get, this installed version 1.8.11.1, exported DOXYGEN variable and run again.

Now dox part finished without error but next step etg fails with

ERROR: Graphviz command dot cannot be run (needed for Graphviz output), check your PATH setting
Traceback (most recent call last):
File “etg/_core.py”, line 478, in
run()
File “etg/_core.py”, line 471, in run
tools.runGenerators(module)
File “/mnt/usb_disc/repos/phoenix/etgtools/tweaker_tools.py”, line 617, in runGenerators
g.generate(module)
File “/mnt/usb_disc/repos/phoenix/etgtools/sphinx_generator.py”, line 2909, in generate
self.generateModule(module)
File “/mnt/usb_disc/repos/phoenix/etgtools/sphinx_generator.py”, line 2982, in generateModule
function(item)
File “/mnt/usb_disc/repos/phoenix/etgtools/sphinx_generator.py”, line 3094, in generatePyClass
docstring.Dump()
File “/mnt/usb_disc/repos/phoenix/etgtools/sphinx_generator.py”, line 2337, in Dump
return function(write)
File “/mnt/usb_disc/repos/phoenix/etgtools/sphinx_generator.py”, line 2368, in DumpClass
png, map = inheritance_diagram.makeInheritanceDiagram()
File “/mnt/usb_disc/repos/phoenix/sphinxtools/inheritance.py”, line 279, in makeInheritanceDiagram
stdout, stderr = p.communicate(code)
UnboundLocalError: local variable ‘p’ referenced before assignment
Command ‘"/usr/bin/python" etg/_core.py --sip’ failed with exit code 1.

This is a little mystic for me, what does it mean? Searching the web didn’t really reveal its secret

I remember one had already built on a RPi3, so it should be possible, in general, shouldn’t it?

Thank you
Claudia

wrote:

Now dox part finished without error but next step etg fails with

ERROR: Graphviz command dot cannot be run (needed for Graphviz output), check your PATH setting

You may have missed this ^^^ message just before the traceback. It’s using the dot command from the graphviz package to make the inheritance diagrams for the documentation. You can either install that, or you can
just skip the building of the docs as part of your builds, since they are already available to download separately. To do that you can add the
–nodoc flag to the command line.

If you would like to reduce the complexity a little more, then you can build using the source tarball instead of a checkout from git. If you do that then the files generated by the dox, etg and sip commands for build.py will already be present, and all you should need to do is build
phase, like python build.py build maybe followed by bdist_wheel if you want to generate the wheel file for your build.

···

cfrank2512@gmail.com

Robin Dunn

Software Craftsman

http://wxPython.org

Thank you very much after removing and reinstalling the graphviz package it is working.
I have to be honest, I didn’t understand that dot is a command even it clearly states it is,
otherwise I would have used ‘which dot’ to see if it can be found and would have found out that it can’t.
Shame on me.

I will check out your suggestions in regards of building the package using the source tarball.

Cheers
Claudia

Thank you and you are right - using source tarball is a real time saver and less painful :slight_smile:
We successfully compiled on the new rock64 after replacing config.sub and guess files

within wxwidgets directory with a more recent version to detect the architecture.

Cheers

Claudia