Closed ghost closed 5 years ago
How do you launch programs in sculpt via existing files on achi-1?
@rainstared: Even though I think your tool chain findings are interesting. I can only ask you to keep your writing at a polite level, as we all do. It is a common practice and a simple thing humans should be able to do. I know things can get frustrating, views on things are different, and we are open for a meaningful discussion. So please reword the paragraph above into something that can be argued about in a meaningful way. If you would have build some tool and I would use it and tell you it is utter ... you know ... Would you talk to me?
my apologies ssumpf.
I'm going to switch to staging using ./tool_chain cleanall and then (in the genode directory) git pull origin --rebase staging and then retry ./tool_chain aarch64 and see if changes made in the most recent commits affect or improve this situation.
Cool, you are the first one trying that on rpi4. So best wishes and if you get it to work any fixes are welcome.
Toolchain libraries down to GCC compile and install correctly. I modified my scrollback to capture the entire first run. https://pastebin.com/nD2dMnH7 The first run of the GCC compileation is here. Many instances of "failed to merge target specific data of file" occur. following https://stackoverflow.com/questions/9753749/arm-compilation-error-vfp-registered-used-by-executable-not-object-file, I run:
env set CFLAGS=" -march=armv7-a -mfloat-abi=hard -mfpu=neon -marm -mthumb-interwork"
I don't really know if those are the right compiler flags, I just figured since RPI4 can run as arm7 they are likely compatible.
and then run /tool_chain AARCH64 -e
Of course, it crashes again, but with a different error:
g++ -no-pie -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc gcov.o \
hash-table.o ggc-none.o -o gcov
gcov.o: In function `print_usage(int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:813: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:814: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:815: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:816: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:817: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o:/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:819: more undefined references to `fnotice(_IO_FILE*, char const*, ...)' follow
gcov.o: In function `print_usage(int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:837: undefined reference to `bug_report_url'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:837: undefined reference to `bug_report_url'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:837: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `gcov_allocate':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:258: undefined reference to `xrealloc'
gcov.o: In function `canonicalize_name(char const*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2287: undefined reference to `xmalloc'
gcov.o: In function `output_branch_count(_IO_FILE*, int, arc_info const*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2692: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2702: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2705: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2707: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2687: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o:/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2715: more undefined references to `fnotice(_IO_FILE*, char const*, ...)' follow
gcov.o: In function `mangle_name(char const*, char*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2436: undefined reference to `lbasename'
gcov.o: In function `gcov_sync(unsigned int, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:675: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `print_source_line(_IO_FILE*, std::vector<char const*, std::allocator<char const*> > const&, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2836: undefined reference to `fancy_abort(char const*, int, char const*)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2837: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `gcov_open(char const*, int) [clone .constprop.393]':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:171: undefined reference to `fdopen_unlocked'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:142: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `function_summary(coverage_info const*, char const*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2252: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `executed_summary':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2244: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `function_summary(coverage_info const*, char const*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2269: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2259: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2263: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o:/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1750: more undefined references to `fnotice(_IO_FILE*, char const*, ...)' follow
gcov.o: In function `gcov_read_summary':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:642: undefined reference to `input_location'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:642: undefined reference to `input_location'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:642: undefined reference to `fatal_error(unsigned int, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:652: undefined reference to `input_location'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:652: undefined reference to `input_location'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:652: undefined reference to `fatal_error(unsigned int, char const*, ...)'
gcov.o: In function `gcov_position':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:74: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `circuit(block_info*, std::vector<arc_info*, std::allocator<arc_info*> >&, block_info*, std::vector<block_info const*, std::allocator<block_info const*> >&, std::vector<std::vector<block_info const*, std::allocator<block_info const*> >, std::allocator<std::vector<block_info const*, std::allocator<block_info const*> > > >&, line_info&, long long&)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:713: undefined reference to `fancy_abort(char const*, int, char const*)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:682: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `process_all_functions()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:263: undefined reference to `xcalloc'
gcov.o: In function `solve_flow_graph':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1890: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1882: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1877: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `process_all_functions()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/mem-stats.h:151: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `find_source(char const*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1510: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1514: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1499: undefined reference to `xstrdup'
gcov.o: In function `executed_summary(unsigned int, unsigned int) [clone .part.8]':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2241: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `function_summary(coverage_info const*, char const*)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2275: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2271: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `hash_table<hash_map<function_start_pair_hash, function_info*, simple_hashmap_traits<default_hash_traits<function_start_pair_hash>, function_info*> >::hash_entry, xcallocator>::expand()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:263: undefined reference to `xcalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:654: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `hash_table<hash_map<function_start_pair_hash, function_info*, simple_hashmap_traits<default_hash_traits<function_start_pair_hash>, function_info*> >::hash_entry, xcallocator>::expand()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/mem-stats.h:151: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `main':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:763: undefined reference to `progname'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:763: undefined reference to `progname'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:765: undefined reference to `xmalloc_set_program_name'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:768: undefined reference to `unlock_std_streams'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:770: undefined reference to `gcc_init_libintl()'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:772: undefined reference to `global_dc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:772: undefined reference to `global_dc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:772: undefined reference to `diagnostic_initialize(diagnostic_context*, int)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:775: undefined reference to `expandargv'
gcov.o: In function `create_file_names':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1406: undefined reference to `xmalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1419: undefined reference to `lbasename'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1425: undefined reference to `xmalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1429: undefined reference to `xmalloc'
gcov.o: In function `read_graph_file':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1535: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `add_line_counts':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2525: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `read_graph_file':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1541: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1554: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1719: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1726: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1575: undefined reference to `xstrdup'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1605: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1587: undefined reference to `cplus_demangle'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1629: undefined reference to `xcalloc'
gcov.o: In function `create_file_names':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1396: undefined reference to `xmalloc'
gcov.o: In function `generate_results':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1280: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `add_line_counts':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2565: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `create_file_names':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1414: undefined reference to `lbasename'
gcov.o: In function `fprintf':
/usr/include/arm-linux-gnueabihf/bits/stdio2.h:98: undefined reference to `version_string'
/usr/include/arm-linux-gnueabihf/bits/stdio2.h:98: undefined reference to `version_string'
gcov.o: In function `output_gcov_file':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1257: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `generate_results':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1340: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `make_gcov_file_name':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2394: undefined reference to `xmalloc'
gcov.o: In function `output_gcov_file':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1244: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `read_line':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2733: undefined reference to `xmalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2752: undefined reference to `xrealloc'
gcov.o: In function `print_version':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:847: undefined reference to `version_string'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:847: undefined reference to `pkgversion_string'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:847: undefined reference to `version_string'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:847: undefined reference to `pkgversion_string'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:847: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:850: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `add_line_counts':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2512: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `gcov_position':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov-io.c:74: undefined reference to `fancy_abort(char const*, int, char const*)'
gcov.o: In function `executed_summary':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2244: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `output_lines':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2944: undefined reference to `xstrdup'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2937: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `output_gcov_file':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1247: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1252: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
gcov.o: In function `make_gcov_file_name':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2409: undefined reference to `md5_init_ctx'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2410: undefined reference to `md5_process_bytes'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2411: undefined reference to `md5_finish_ctx'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2415: undefined reference to `xmalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:2385: undefined reference to `xmalloc'
gcov.o: In function `get_gcov_intermediate_filename':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1019: undefined reference to `lbasename'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1021: undefined reference to `xmalloc'
gcov.o: In function `generate_results':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/gcov.c:1304: undefined reference to `fnotice(_IO_FILE*, char const*, ...)'
hash-table.o: In function `hash_table_higher_prime_index(unsigned long)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.c:96: undefined reference to `fancy_abort(char const*, int, char const*)'
hash-table.o: In function `mem_alloc_description<mem_usage>::mem_alloc_description()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:263: undefined reference to `xcalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:263: undefined reference to `xcalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:263: undefined reference to `xcalloc'
hash-table.o: In function `hash_table<hash_map<void const*, mem_usage_pair<mem_usage>, simple_hashmap_traits<default_hash_traits<void const*>, mem_usage_pair<mem_usage> > >::hash_entry, xcallocator>::expand()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:263: undefined reference to `xcalloc'
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/hash-table.h:654: undefined reference to `fancy_abort(char const*, int, char const*)'
hash-table.o: In function `hash_table<hash_map<void const*, mem_usage_pair<mem_usage>, simple_hashmap_traits<default_hash_traits<void const*>, mem_usage_pair<mem_usage> > >::hash_entry, xcallocator>::expand()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/mem-stats.h:151: undefined reference to `fancy_abort(char const*, int, char const*)'
hash-table.o: In function `mem_alloc_description<mem_usage>::~mem_alloc_description()':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/mem-stats.h:151: undefined reference to `fancy_abort(char const*, int, char const*)'
ggc-none.o: In function `ggc_internal_alloc(unsigned int, void (*)(void*), unsigned int, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/ggc-none.c:47: undefined reference to `fancy_abort(char const*, int, char const*)'
ggc-none.o: In function `ggc_internal_cleared_alloc(unsigned int, void (*)(void*), unsigned int, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/ggc-none.c:55: undefined reference to `fancy_abort(char const*, int, char const*)'
ggc-none.o: In function `ggc_internal_alloc(unsigned int, void (*)(void*), unsigned int, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/ggc-none.c:48: undefined reference to `xmalloc'
ggc-none.o: In function `ggc_internal_cleared_alloc(unsigned int, void (*)(void*), unsigned int, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/ggc-none.c:56: undefined reference to `xcalloc'
ggc-none.o: In function `ggc_realloc_stat(void*, unsigned int)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/ggc-none.c:62: undefined reference to `xrealloc'
collect2: error: ld returned 1 exit status
Makefile:2933: recipe for target 'gcov' failed
make[3]: *** [gcov] Error 1
make[3]: *** Waiting for unfinished jobs....
rm fsf-funding.pod gcov.pod gpl.pod cpp.pod gfdl.pod gcc.pod gcov-dump.pod gccgo.pod
make[3]: Leaving directory '/media/raspex/swap/genode/build/tool_chain-19.05/aarch64/gcc/gcc'
Makefile:4270: recipe for target 'all-gcc' failed
make[2]: *** [all-gcc] Error 2
make[2]: Leaving directory '/media/raspex/swap/genode/build/tool_chain-19.05/aarch64/gcc'
Makefile:906: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/media/raspex/swap/genode/build/tool_chain-19.05/aarch64/gcc'
tool_chain:485: recipe for target '/media/raspex/swap/genode/build/tool_chain-19.05/aarch64/gcc/gcc/g++-cross' failed
make: *** [/media/raspex/swap/genode/build/tool_chain-19.05/aarch64/gcc/gcc/g++-cross] Error 2
https://github.com/google/honggfuzz/issues/55 some other people seem to have similar issues. at this point i ran sudo apt-get install binutils-dev libiberty-dev and tried again, to same result.
http://sourceware.org/ml/crossgcc/2003-10/msg00086.html
https://www.spinics.net/lists/netdev/msg541076.html
it would seem with regards to binutils and arm this is a longstanding struggle
This only seems to be gcov stuff, can you disable it somehow? It is not required.
how do I disable gconv?
I Upgraded to 19.04 as best I could, with GCC 8.3 along with all the supporting cruft. They added some arm compilation features.
Ok, so I successfully removed the gcov dependency by altering tool_chain. The compile got a little further but still failed in the linking stage. Attached is the build log from the point of first failure. it goes on for hundreds of lines thou.
g++ -fno-PIE -c -DIN_GCC_FRONTEND -g -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -I. -I. -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/. -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/../include -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/../libcpp/include -I/media/raspex/swap/genode/build/tool_chain-19.05/lib-install/include -I/media/raspex/swap/genode/build/tool_chain-19.05/lib-install/include -I/media/raspex/swap/genode/build/tool_chain-19.05/lib-install/include -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/../libdecnumber -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/../libbacktrace -o cc1-checksum.o -MT cc1-checksum.o -MMD -MP -MF ./.deps/cc1-checksum.TPo cc1-checksum.c
g++ -no-pie -g -O2 -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc -o cc1 c/c-lang.o c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-fold.o c/gimple-parser.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-ubsan.o c-family/known-headers.o c-family/c-attribs.o c-family/c-warn.o c-family/c-spellcheck.o arm-c.o glibc-c.o \
cc1-checksum.o libbackend.a main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a -L/media/raspex/swap/genode/build/tool_chain-19.05/lib-install/lib -L/media/raspex/swap/genode/build/tool_chain-19.05/lib-install/lib -L/media/raspex/swap/genode/build/tool_chain-19.05/lib-install/lib -lmpc -lmpfr -lgmp -rdynamic -ldl -L./../zlib -lz
collect2: fatal error: ld terminated with signal 9 [Killed]
compilation terminated.
/usr/bin/ld: c/c-parser.o: in function `void va_heap::reserve<c_generic_association>(vec<c_generic_association, va_heap, vl_embed>*&, unsigned int, bool)':
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/vec.h:288: undefined reference to `xrealloc'
May I ask why you try to build Genode on the Rpi4 in contrast to do cross compilation on PC? Are you planning to run Genode/Linux on the Pi or do you want to address Genode on a microkernel? I'm asking as I get the feeling you're the first person walking these undiscovered territory.
collect2: fatal error: ld terminated with signal 9 [Killed]
Have you checked dmesg
? This could be an OOM during the linking.
May I ask why you try to build Genode on the Rpi4 in contrast to do cross compilation on PC? Are you planning to run Genode/Linux on the Pi or do you want to address Genode on a microkernel? I'm asking as I get the feeling you're the first person walking these undiscovered territory.
RPI4 with a couple of heatsinks is safely, warrantee-covered overclocked to 1.75ghz. The performance as a host is less than desired but acceptable.
In contrast to cross-compile, direct compile exercises a different set of muscles and would allow discovering bugs that are relevant and meaningful in the future, when you are working from arm hosts to build code for arm targets. We have affordable ARMv8 laptops now like the pinebook 64 and the pinebook pro coming out, and since the RPI4's hardware is mostly supported it makes a reasonable incremental step towards that future. The ultimate dogfood goal for any operating system is for that operating system to be selfhosting on the target platform. If I can provide a proof of work that genode compiles and runs on armv8, on a RPI4, it's another feather in your bonnet.
I planned to attempt to compile the run/demo with the Fiasco.OC microkernel on the PI, as linked in a tutorial I found on the web. I would like to include the arora browser in that demo, and any supporting libraries programs and services sufficient to allow it to successfully navigate to genode.org, but just the demo is the start.
collect2: fatal error: ld terminated with signal 9 [Killed]
Have you checked
dmesg
? This could be an OOM during the linking. face palm This RPI4 only has 1gb. I set up a 7GB swap file on a usb3 flash but I forgot to put it in fstab and rebooted during the updating process a couple of times.. It could be useful in the future for tool_chain to do an check on available ram and swap space combined and warn the user if it won't compile. I will make one more attempt to compile the tool chain after making sure there is enough swap space.
I cannot get gcc to compile without gcov! i put --disable-gcov and --without-gcov in both the gcc_bootstrap and the gcc_options sections of tool_chain and it still is trying to compile it! I see in common options --disable-multilib and I will put it there too, just to be safe.
I managed to get --disable-gconv to work by putting it in the common options section of tool_chain.
Ok, so i attached ANOTHER! flash drive and allocated 14GB of swap. the total VM for this system is now 22GB. https://gitlab.haskell.org/ghc/ghc/issues/5240 https://github.com/bitcoin/bitcoin/issues/7471
Apparently there ARE things people can do that reduce how much memory is used, and I will also try them if this compile pass fails.
ok, so I did everything I know how, and I used all the options I have presented here.
With
export CFLAGS=" -march=armv7-a -mfloat-abi=hard -mfpu=neon -marm -mthumb-interwork --param gcc-min-xpand=1 --param gcc-min-heapsize=32728 -Xlinker --reduce-memory-usage -Xlinker -- hash-size=31 -fuse-ld=gold"
export CXXFLAGS=" -march=armv7-a -mfloat-abi=hard -mfpu=neon -marm -mthumb-interwork --param gcc-min-xpand=1 --param gcc-min-heapsize=32728 -Xlinker --reduce-memory-usage -Xlinker -- hash-size=31 -fuse-ld=gold"
and COMMON_BOOTSTRAP_CONFIG in tool_chain modified to:
215 ' --disable-multilib \ 216 +'--disable-gcov \ 217 +'--without-gcov
It gets further and faster than ever before but still fails, because of one crucial flaw. armhf is a 32 bit architecture with a floating point MMU and LD32 can only access 2gb of VM. GCC 8.3, which needs ~4-6GB of VM, cannot be bootstrapped with ld32 or any 32 bit binutils build.
Now, the hardware CAN do it. ARM CORTEX-A72 as used in RPI4 BCM2711 is 64 bit. But the distros build for this device are being built for multiple raspberry pi systems and so are armhf.
I will have to wait for a 64 bit arm linux build before I can effectively attempt this process.
64 bit ubuntu, raspian, and raspex are not yet available but ubuntu MATE 18.04 apparently has a 64 bit build. I will repeat this entire process and see what happens.
What a ride! While we have been focused using Genode on our own notebooks lately, we did not lose self hosting out of sight. There are still some prerequisites for this to work well necessary, like getting rid of noux and have a meaningful fork
implementation in libc.
After obtaining a RPI4 ubuntu server 18.04 image, I was able to update and configure it to meet what I hope will be the needs of this project. The stated goal of this project is to compile the genode toolkit on AARCH64 RPI4 successfully, and report any legitimate errors.
uname -a Linux ubuntu 4.19.57-v8+ #2 SMP PREEMPT Tue Jul 9 20:31:37 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux gcc --versiongcc (Ubuntu/Linaro 8.3.0-6ubuntu1) 8.3.0
buntu@ubuntu:/media$ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/root 7320372 6010548 977508 87% / devtmpfs 436272 0 436272 0% /dev tmpfs 469520 43144 426376 10% /dev/shm tmpfs 93904 932 92972 1% /run tmpfs 5120 0 5120 0% /run/lock tmpfs 469520 0 469520 0% /sys/fs/cgroup /dev/loop0 49408 49408 0 100% /snap/lxd/11107 /dev/loop1 80256 80256 0 100% /snap/core/7275 /dev/mmcblk0p1 258095 113763 144332 45% /boot/firmware tmpfs 93904 12 93892 1% /run/user/1000 /dev/sdb1 14805376 80884 13952704 1% /media/ubuntu/genode ubuntu@ubuntu:/media$ free total used free shared buff/cache available Mem: 939040 641260 61888 56964 235892 225892 Swap: 15108092 40200 15067892
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 8.3.0-6ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --program-prefix=aarch64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --disable-libphobos --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=aarch64-linux-gnu --host=aarch64-linux-gnu --target=aarch64-linux-gnu Thread model: posix
Architecture: aarch64 Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 4 Socket(s): 1 Vendor ID: ARM Model: 3 Model name: Cortex-A72 Stepping: r0p3 CPU max MHz: 1750.0000 CPU min MHz: 600.0000 BogoMIPS: 108.00 Flags: fp asimd evtstrm crc32 cpuid
ubuntu
description: Computer
product: Raspberry Pi 4 Model B Rev 1.1
serial: 100000000ae5b78b
width: 64 bits
capabilities: smp cp15_barrier setend swp
-core
description: Motherboard
physical id: 0
-cpu:0
description: CPU
product: cpu
physical id: 1
bus info: cpu@0
size: 1750MHz
capacity: 1750MHz
capabilities: fp asimd evtstrm crc32 cpuid cpufreq
-cpu:1
description: CPU
product: cpu
physical id: 2
bus info: cpu@1
size: 1750MHz
capacity: 1750MHz
capabilities: fp asimd evtstrm crc32 cpuid cpufreq
-cpu:2
description: CPU
product: cpu
physical id: 3
bus info: cpu@2
size: 1750MHz
capacity: 1750MHz
capabilities: fp asimd evtstrm crc32 cpuid cpufreq
-cpu:3
description: CPU
product: cpu
physical id: 4
bus info: cpu@3
size: 1750MHz
capacity: 1750MHz
capabilities: fp asimd evtstrm crc32 cpuid cpufreq
-memory
description: System memory
physical id: 5
size: 917MiB
-pci
description: PCI bridge
product: Broadcom Inc. and subsidiaries
vendor: Broadcom Inc. and subsidiaries
physical id: 0
bus info: pci@0000:00:00.0
version: 10
width: 32 bits
clock: 33MHz
capabilities: pci pm pciexpress normal_decode bus_master cap_list
resources: memory:600000000-6000fffff
-usb
description: USB controller
product: VL805 USB 3.0 Host Controller
vendor: VIA Technologies, Inc.
physical id: 0
bus info: pci@0000:01:00.0
version: 01
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress xhci bus_master cap_list
configuration: driver=xhci_hcd latency=0
resources: irq:37 memory:600000000-600000fff
-usbhost:0
product: xHCI Host Controller
vendor: Linux 4.19.57-v8+ xhci-hcd
physical id: 0
bus info: usb@1
logical name: usb1
version: 4.19
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
-usb
description: USB hub
product: USB2.0 Hub
vendor: VIA Labs, Inc.
physical id: 1
bus info: usb@1:1
version: 4.20
capabilities: usb-2.10
configuration: driver=hub maxpower=100mA slots=4 speed=480Mbit/s
-usb:0
description: Keyboard
product: Dell KB216 Wired Keyboard
vendor: Dell Computer Corp.
physical id: 3
bus info: usb@1:1.3
version: 1.08
capabilities: usb-1.10
configuration: driver=usbhid maxpower=100mA speed=2Mbit/s
-usb:1
description: Mouse
product: Dell MS116 USB Optical Mouse
vendor: PixArt
physical id: 4
bus info: usb@1:1.4
version: 1.00
capabilities: usb-2.00
configuration: driver=usbhid maxpower=100mA speed=2Mbit/s
-usbhost:1
product: xHCI Host Controller
vendor: Linux 4.19.57-v8+ xhci-hcd
physical id: 1
bus info: usb@2
logical name: usb2
version: 4.19
capabilities: usb-3.00
configuration: driver=hub slots=4 speed=5000Mbit/s
-usb:0
description: Mass storage device
product: DataTraveler 3.0
vendor: Kingston
physical id: 1
bus info: usb@2:1
logical name: scsi0
version: 0.01
serial: D067E51648BAF03126001411
capabilities: usb-3.00 scsi emulated
configuration: driver=usb-storage maxpower=296mA speed=5000Mbit/s
-disk
description: SCSI Disk
product: DataTraveler 3.0
vendor: Kingston
physical id: 0.0.0
bus info: scsi@0:0.0.0
logical name: /dev/sda
serial: 0
size: 14GiB (15GB)
capabilities: removable
configuration: ansiversion=6 logicalsectorsize=512 sectorsize=512
-medium
physical id: 0
logical name: /dev/sda
size: 14GiB (15GB)
capabilities: partitioned partitioned:dos
configuration: signature=2d4cd32d
-volume
description: Linux swap volume
physical id: 1
logical name: /dev/sda1
version: 1
serial: 68403ad0-8022-49d7-b8b5-d5f0752db614
size: 14GiB
capacity: 14GiB
capabilities: primary nofs swap initialized
configuration: filesystem=swap pagesize=4096
-usb:1
description: Mass storage device
product: DataTraveler 3.0
vendor: Kingston
physical id: 2
bus info: usb@2:2
logical name: scsi1
version: 0.01
serial: D067E5164954F031260C082D
capabilities: usb-3.00 scsi emulated
configuration: driver=usb-storage maxpower=296mA speed=5000Mbit/s
-disk
description: SCSI Disk
product: DataTraveler 3.0
vendor: Kingston
physical id: 0.0.0
bus info: scsi@1:0.0.0
logical name: /dev/sdb
serial: 0
size: 14GiB (15GB)
capabilities: removable
configuration: ansiversion=6 logicalsectorsize=512 sectorsize=512
-medium
physical id: 0
logical name: /dev/sdb
size: 14GiB (15GB)
capabilities: partitioned partitioned:dos
configuration: signature=0826fadb
-volume
description: EXT4 volume
vendor: Linux
physical id: 1
logical name: /dev/sdb1
logical name: /media/ubuntu/genode
version: 1.0
serial: 2ce0bd29-96d1-41c4-9528-89173acef790
size: 14GiB
capacity: 14GiB
capabilities: primary journaled extended_attributes large_files huge_files dir_nlink recover extents ext4 ext2 initialized
configuration: created=2019-07-17 15:30:35 filesystem=ext4 lastmountpoint=/media/ubuntu/genode modified=2019-07-17 15:40:42 mount.fstype=ext4 mount.options=rw,relatime mounted=2019-07-17 15:40:42 state=mounted
-usbhost
product: DWC OTG Controller
vendor: Linux 4.19.57-v8+ dwc_otg_hcd
physical id: 1
bus info: usb@3
logical name: usb3
version: 4.19
capabilities: usb-2.00
configuration: driver=hub slots=1 speed=480Mbit/s
*-network
description: Ethernet interface
physical id: 2
logical name: eth0
serial: dc:a6:32:00:3b:b8
size: 100Mbit/s
capacity: 1Gbit/s
capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=bcmgenet driverversion=v2.0 duplex=full ip=10.10.10.10 link=yes multicast=yes port=MII speed=100Mbit/s
./tool/tool_chain -e MAKE_JOBS=1 aarch64 Need to have 'libexpat' installed. tool/tool_chain:178: *** Please install missing tools.. Stop.
any ideas?
lrwxrwxrwx 5 root root 17 Jun 26 11:21 /lib/aarch64-linux-gnu/libexpat.so.1 -> libexpat.so.1.6.8
-rw-r--r-- 2 root root 190536 Jun 26 11:21 /lib/aarch64-linux-gnu/libexpat.so.1.6.8
lrwxrwxrwx 1 root root 17 Jun 27 2017 /snap/core/7275/lib/aarch64-linux-gnu/libexpat.so.1 -> libexpat.so.1.6.0
-rw-r--r-- 1 root root 145488 Jun 27 2017 /snap/core/7275/lib/aarch64-linux-gnu/libexpat.so.1.6.0
SHELL=/bin/bash
QT_ACCESSIBILITY=1
COLORTERM=truecolor
XDG_CONFIG_DIRS=/etc/xdg/xdg-LXDE:/etc/xdg
XDG_MENU_PREFIX=lxde-
_LXSESSION_PID=798
SSH_AUTH_SOCK=/tmp/ssh-2yFin9ls39jS/agent.798
XDG_DATA_HOME=/home/ubuntu/.local/share
XDG_CONFIG_HOME=/home/ubuntu/.config
DESKTOP_SESSION=LXDE
SSH_AGENT_PID=845
XDG_SEAT=seat0
PWD=/media/ubuntu/genode/genode
LOGNAME=ubuntu
XDG_SESSION_TYPE=x11
GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
CXXFLAGS= -march=native -mtune=native -mfpu=neon -mfloat-abi=hard -mthumb-interwork --enable-fix-cortex-a53-843419 -disable-libquadmath --disable-libquadmath-support --param gcc-min-xpand=1 --param gcc-min-heapsize=32728 -Xlinker --reduce-memory-usage -Xlinker -- hash-size=31 -fuse-ld=gold
XAUTHORITY=/home/ubuntu/.Xauthority
LDFLAGS= -L/usr/lib -lexpat
HOME=/home/ubuntu
LANG=C.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
XDG_CURRENT_DESKTOP=LXDE
VTE_VERSION=5602
INVOCATION_ID=b0189a781f1745caa4355d55a677538a
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_SESSION_CLASS=user
TERM=xterm-256color
LESSOPEN=| /usr/bin/lesspipe %s
USER=ubuntu
DISPLAY=:0.0
SHLVL=1
XDG_VTNR=7
XDG_SESSION_ID=c2
XDG_RUNTIME_DIR=/run/user/1000
JOURNAL_STREAM=8:15132
XDG_DATA_DIRS=/usr/local/share:/usr/share:/usr/share/gdm:/var/lib/menu-xdg:/usr/local/share/:/usr/share/:/usr/share/gdm/:/var/lib/menu-xdg/
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
CFLAGS= -march=native -mtune=native -mfpu=neon -mfloat-abi=hard -mthumb-interwork --enable-fix-cortex-a53-843419 -disable-libquadmath --disable-libquadmath-support --param gcc-min-xpand=1 --param gcc-min-heapsize=32728 -Xlinker --reduce-memory-usage -Xlinker -- hash-size=31 -fuse-ld=gold -I/usr/include
SAL_USE_VCLPLUGIN=gtk
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
OLDPWD=/media/ubuntu/genode
_=/usr/bin/env
Selecting previously unselected package libexpat1-dev:arm64. (Reading database ... 208507 files and directories currently installed.) Preparing to unpack .../libexpat1-dev_2.2.6-1ubuntu0.19.04_arm64.deb ... Unpacking libexpat1-dev:arm64 (2.2.6-1ubuntu0.19.04) ... Setting up libexpat1-dev:arm64 (2.2.6-1ubuntu0.19.04) ... ubuntu@ubuntu:/media/ubuntu/genode/genode$ ./tool/tool_chain -e MAKE_JOBS=1 aarch64 tool/tool_chain:215: *** recipe commences before first target. Stop. ubuntu@ubuntu:/media/ubuntu/genode/genode$ nano ./tool/tool_chain ubuntu@ubuntu:/media/ubuntu/genode/genode$ ./tool/tool_chain -e MAKE_JOBS=1 aarch64 preparing gcc... make[1]: Entering directory '/media/ubuntu/genode/genode' make[2]: Entering directory '/media/ubuntu/genode/genode' gcc download ftp://ftp.fu-berlin.de/gnu/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz
./tool/tool_chain -e MAKE_JOBS=1 aarch64 --debug=v V=s 2> toolchainerrors.log2
Must remake target 'cc1'.
g++ -no-pie -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc -o cc1 c/c-lang.o c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-fold.o c/gimple-parser.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-ubsan.o c-family/known-headers.o c-family/c-attribs.o c-family/c-warn.o c-family/c-spellcheck.o aarch64-c.o glibc-c.o \
cc1-checksum.o libbackend.a main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a -L/media/ubuntu/genode/genode/build/tool_chain-19.05/lib-install/lib -L/media/ubuntu/genode/genode/build/tool_chain-19.05/lib-install/lib -L/media/ubuntu/genode/genode/build/tool_chain-19.05/lib-install/lib -lmpc -lmpfr -lgmp -rdynamic -ldl -L./../zlib -lz
Reaping losing child lots of xmalloc not found.
For some reason, GCC as presently configured is not finding the libc headers on my system or something but it's only doing it when trying to link gcc- everything else links and compiles fine.
libtool: install: warning: remember to run `libtool --finish /media/ubuntu/genode/genode/build/tool_chain-19.05/bootstrap/install/libexec/gcc/aarch64-unknown-linux-gnu/8.3.0'
Configuring in ./gcc
configure: WARNING: decimal float is not supported for this target, ignored
configure: WARNING: fixed-point is not supported for this target, ignored
Using /media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/aarch64/aarch64.c' for machine-specific logic. Using
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/aarch64/aarch64.md' as machine description file.
Using the following target machine macro files:
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/aarch64/biarchlp64.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/aarch64/aarch64.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/dbxelf.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/elfos.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/gnu-user.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/linux.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/glibc-stdint.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/aarch64/aarch64-elf.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/aarch64/aarch64-linux.h
/media/ubuntu/genode/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/gcc/config/initfini-array.h
Using host-linux.o for host machine hooks.
Links are now set up to build a native compiler for aarch64-unknown-linux-gnu.
gcc_driver_version: 8.3.0
mkdir -p -- .deps
mkdir -p -- build/.deps
mkdir -p -- ada/.deps
mkdir -p -- brig/.deps
mkdir -p -- c/.deps
mkdir -p -- cp/.deps
mkdir -p -- fortran/.deps
mkdir -p -- go/.deps
mkdir -p -- jit/.deps
mkdir -p -- lto/.deps
mkdir -p -- objc/.deps
mkdir -p -- objcp/.deps
mkdir -p -- c-family/.deps
mkdir -p -- common/.deps
mkdir -p -- build-aarch64-unknown-linux-gnu/libiberty
Configuring in build-aarch64-unknown-linux-gnu/libiberty
mkdir -p -- build-aarch64-unknown-linux-gnu/fixincludes
Configuring in build-aarch64-unknown-linux-gnu/fixincludes
mkdir -p -- build-aarch64-unknown-linux-gnu/libcpp
Configuring in build-aarch64-unknown-linux-gnu/libcpp
mkdir -p -- .deps
preparing ali2dep... Cloning into '/media/ubuntu/genode/genode/build/tool_chain-19.05/ali2dep'... remote: Enumerating objects: 107, done. remote: Counting objects: 100% (107/107), done. remote: Compressing objects: 100% (73/73), done. remote: Total 107 (delta 36), reused 100 (delta 30), pack-reused 0 Receiving objects: 100% (107/107), 230.02 KiB | 762.00 KiB/s, done. Resolving deltas: 100% (36/36), done. building ali2dep... Compile [Ada] main.adb [C] dummy.c [C] version.c [Ada] ali2dep.adb [Ada] ali.adb [Ada] namet.adb [Ada] types.adb [Ada] butil.adb [Ada] debug.adb [Ada] fname.adb [Ada] opt.adb [Ada] osint.adb [Ada] output.adb [Ada] casing.adb [Ada] gnatvsn.adb [Ada] rident.ads [Ada] table.adb [Ada] tree_io.adb [Ada] widechar.adb [Ada] alloc.ads [Ada] hostparm.ads [Ada] fmap.adb [Ada] sdefault.adb [Ada] targparm.adb [Ada] csets.adb Bind [gprbind] main.bexch [Ada] main.ali Link [archive] libbuild.a [index] libbuild.a [link] main.adb installing ali2dep... installing tool chain to '/usr/local/genode/tool/19.05'... ubuntu@ubuntu:/media/ubuntu/genode/genode$
Successfully compiled and installed genode toolchain on raspberry pi 4 1gb
As a futher comment i had to swap out all the config.guess files, there are like 5 of them, for copies of the one on my system. I also had to install a few extra packages- and I had to cleanup obsolete packages on my system. It did not like gcc7 and friends being installed alongside gcc8! besides that, it compiled with vanilla settings. took a few hours!
/media/raspex/swap/genode/contrib/gcc-893d85767720fc2b3c695c56d737d2307b1f2229/src/noux-pkg/gcc/libgcc/libgcc2.c:27: /usr/include/stdio.h:27:10: fatal error: bits/libc-header-start.h: No such file or directory
include <bits/libc-header-start.h>
This error is solved by running sudo apt-get install gcc-multilib g++-multilib as linked here. https://github.com/sirfz/tesserocr/issues/130
However, when restarting tool_chain, libraries for binutils are installed and then the installer seems to fail. The relevant command line excerpt is below, followed by the relevant config.log exerpt.
Terminal lines:
I ran the command again before checking config.log.
config.log lines:
Edit: this is a known problem on this architecture when compiling with make-strip. See https://bugs.launchpad.net/qemu/+bug/1324724