diff --git a/platforms/ubuntu/Makefile.build b/platforms/ubuntu/Makefile.build index bd13bdd60..ebb79d817 100644 --- a/platforms/ubuntu/Makefile.build +++ b/platforms/ubuntu/Makefile.build @@ -23,6 +23,12 @@ APP_EXTRA_FW_PARTS ?= ASAN ?= 0 PROF ?= 0 +# COMPILER_TOOLKIT, valid options: +# aarch64-linux-gnu +# arm-linux-gnueabi +# arm-linux-gnueabihf +# x86_64-linux-gnu (the default) +COMPILER_TOOLKIT ?= x86_64-linux-gnu # Explicitly disable updater, it's not supported on POSIX build yet. MGOS_ENABLE_DEBUG_UDP = 0 @@ -62,6 +68,12 @@ C_CXX_FLAGS = -ggdb -MD -Wall -Wextra -Werror -pipe \ $(MONGOOSE_FEATURES) LDFLAGS ?= +# Select compiler toolkit +CC = $(COMPILER_TOOLKIT)-gcc +CXX = $(COMPILER_TOOLKIT)-g++ +AR = $(COMPILER_TOOLKIT)-ar +LD = $(COMPILER_TOOLKIT)-ld + ifeq "$(ASAN)" "1" CC = clang CXX = clang++ @@ -86,7 +98,6 @@ CXXFLAGS = -std=gnu++11 -fno-exceptions $(C_CXX_FLAGS) $(APP_CXXFLAGS) LDFLAGS += -lstdc++ INCDIRS = $(addprefix -I,$(INCLUDES)) -AR ?= ar APP_BIN_LIBS ?= LIBS ?= pthread cap LDLIBS = $(addprefix -l,$(LIBS)) diff --git a/platforms/ubuntu/src/ubuntu_main.c b/platforms/ubuntu/src/ubuntu_main.c index d16f8f320..a185ed3d8 100644 --- a/platforms/ubuntu/src/ubuntu_main.c +++ b/platforms/ubuntu/src/ubuntu_main.c @@ -230,8 +230,8 @@ enum mgos_init_result mongoose_init(void) { cpu_freq = (int) (mgos_get_cpu_freq() / 1000000); heap_size = mgos_get_heap_size(); free_heap_size = mgos_get_free_heap_size(); - LOG(LL_INFO, ("CPU: %d MHz, heap: %lu total, %lu free", cpu_freq, heap_size, - free_heap_size)); + LOG(LL_INFO, ("CPU: %d MHz, heap: %lu total, %lu free", cpu_freq, + (unsigned long) heap_size, (unsigned long) free_heap_size)); mgos_invoke_cb(ubuntu_net_up, NULL, false /* from_isr */); diff --git a/tools/docker/ubuntu/Dockerfile-ubuntu-build b/tools/docker/ubuntu/Dockerfile-ubuntu-build index 6f6b03f39..1a9c704c7 100644 --- a/tools/docker/ubuntu/Dockerfile-ubuntu-build +++ b/tools/docker/ubuntu/Dockerfile-ubuntu-build @@ -6,7 +6,10 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ libexpat-dev libncurses5-dev libtool-bin \ python python-dev python-git python-pyelftools python-serial python-six python-yaml \ python3 python3-dev python3-git python3-pyelftools python3-serial python3-six python3-yaml \ - software-properties-common texinfo unzip wget zip && \ + software-properties-common texinfo unzip wget zip \ + gcc-multilib-arm-linux-gnueabi g++-arm-linux-gnueabi \ + gcc-multilib-arm-linux-gnueabihf g++-arm-linux-gnueabihf \ + gcc-aarch64-linux-gnu g++-aarch64-linux-gnu && \ apt-get clean RUN DEBIAN_FRONTEND=noninteractive apt-get update && \