Just for fun I took a screenshot of my latest tag cloud:
As you can see the new tag In The Lab With Jay Jay is quite prominent now. And ChatGPT is fairly new as well.
Ah the times how they are a’changing.
Just for fun I took a screenshot of my latest tag cloud:
As you can see the new tag In The Lab With Jay Jay is quite prominent now. And ChatGPT is fairly new as well.
Ah the times how they are a’changing.
This is a part of the homework feature of my blog, which is an ongoing conversation with my mate S.F.
Hey mate. Lovely to see you again, as always.
I ended up getting these cards printed at clickmedia.com.au to take with me on Wednesday to ElectroneX:
I mentioned Iain McGilchrist, he’s a psychiatrist who dabbles in philosophy. I think he has a really excellent and interesting view of things. It’s hard to summarise his position but he is very interested in the difference in perceptive capabilities of the left and right hemispheres of the brain. He has a YouTube channel over here: @DrIainMcGilchrist and if you search for him you will find many a fascinating interview.
You told me to check out Succession (TV series).
I found the Four Corners video you mentioned, over here: Self-defence or genocide? Asking Israel’s powerful voices about Gaza | Four Corners.
I mentioned Eben Moglen, who has a website over here: moglen.law.columbia.edu. I find Eben inspirational. He’s always talking in grandiose eloquence about the importance of free software, if you search for him on YouTube you are bound to find something of interest.
I mentioned Annie Jacobsen, she’s a pretty interesting cat. She has written a number of books on conspiracy-theory-like topics. I recently read her book Nuclear War: A Scenario.
I have a note here that says “positive view on nihilism” but I forget what that was about. Something I wanted to tell you, now lost to time. But searching for ‘positive view on nihilism’ turns up a bunch of interesting results! (Oh. Wait. Found it! It’s a video I wanted you to see: Optimistic Nihilism.)
Oh, another note I don’t remember: “void of ‘huh'”. I assume we were being hilarious.
There is an urban myth that the first human projectile that made it into space was a manhole cover from nuclear testing facilities for Operation Plumbbob in 1957. I dunno if it’s true, but it’s a good story!
Good news everyone!
The In The Lab With Jay Jay website has been freeloading off jj5.net for a while now, over here: https://www.inthelabwithjayjay.com/in-the-lab/
But I am pleased to announce that it has now been moved into its new and permanent home, over here: InTheLabWithJayJay.com
There is also a short-link domain which will redirect you to the new site which I put into production to keep the links on my business cards short: jjlab.net
Speaking of business cards I had some made to take with me to ElectroneX on Wednesday:
I’m planning to show up in costume and hand out business cards, because I am a *genuine* nerd.
As part of the migration to the new domain I improved the content of the site a bit. There is now an about page with contact info and such and also a support the show page with some ideas about how people can support the show!
This post is part of my video blog and you can find more information about this video on this show’s homepage which is here.
You can support this channel on Patreon: patreon.com/JohnElliotV
Silly Job Title: Amp Alchemist
In this video I announce the new Mini Projects. These are a new feature of Silicon Chip magazine sponsored by Jaycar. Each month two or three Mini Projects get published in Silicon Chip, and we will be building those projects together on the channel each month!
If you’re interested in Silicon Chip magazine (it’s really good!) then I would certainly encourage you to subscribe.
In this video I misspoke and said this was the “May 2004” issue of the magazine, but of course it is the “May 2024” issue of the magazine! Unfortunately I missed that errata during editing and didn’t include a title clip correction.
I don’t understand what happened that caused that video corruption we saw earlier in the video. I suspect the workstation I was using to record the video had some other processing task which interfered with its recording speed or something? Hopefully this is not an ongoing problem. It’s not a problem I have seen before.
Update: ElectroneX has now been and gone and my write up about the day is over here: My day at ElectroneX with my friend. I got my photo with Dave Jones!
Thanks very much for watching! And please remember to hit like and subscribe!
Following is a product I use picked at random from my collection which may appear in my videos. Clicking through on this to find and click on the green affiliate links before purchasing from eBay or AliExpress is a great way to support the channel at no cost to you. Thanks!
Kaisi Soldering Tools With Desoldering Pumpnotes |
Let’s go shopping!
I have my Linux kernel sources setup like this:
------------------- Fri Jun 14 00:35:24 [bash:5.2.15 jobs:0 error:0 time:2449] jj5@virtuoso:/home/jj5/repo/git/git.kernel.org/torvalds-linux $ git remote show origin * remote origin Fetch URL: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Push URL: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git HEAD branch: master Remote branch: master tracked Local branch configured for 'git pull': master merges with remote master Local ref configured for 'git push': master pushes to master (local out of date) -------------------
The scripts/clang-tools/gen_compile_commands.py
runs just fine:
------------------- Fri Jun 14 00:35:28 [bash:5.2.15 jobs:0 error:0 time:2453] jj5@virtuoso:/home/jj5/repo/git/git.kernel.org/torvalds-linux $ scripts/clang-tools/gen_compile_commands.py -------------------
But there is a problem with some unknown clang options, as you can see here:
So I wrote this collection of sed scripts to delete the problematic options:
------------------- Fri Jun 14 00:11:28 [bash:5.2.15 jobs:0 error:0 time:1013] jj5@virtuoso:/home/jj5/repo/git/git.kernel.org/torvalds-linux $ cat jj5/fix-commands.sh #!/bin/bash main() { set -euo pipefail; cd "$( dirname "$0" )"; cd ..; local file="compile_commands.json"; sed -i 's/-mpreferred-stack-boundary=3//g' "$file" sed -i 's/-mfunction-return=thunk-extern//g' "$file" sed -i 's/-mindirect-branch=thunk-extern//g' "$file" sed -i 's/-mindirect-branch-register//g' "$file" sed -i 's/-fno-allow-store-data-races//g' "$file" sed -i 's/-fconserve-stack//g' "$file" sed -i 's/-mrecord-mcount//g' "$file" } main "$@"; -------------------
Bug fixed! Thanks to my mates on IRC for helping me fix this one. This clangd extension for VS Code seems to work really well.
p.s. another possible solution is here.
More than you ever wanted to know about the ELF format: ELF and ABI Standards.
My friend sent me this:
It pretty much forced me to write spiral.php and spiral.sh to generate this:
print('1') print('7 8 9') print('6 1 2') print('5 4 3') print('21 22 23 24 25') print('20 7 8 9 10') print('19 6 1 2 11') print('18 5 4 3 12') print('17 16 15 14 13') print('43 44 45 46 47 48 49') print('42 21 22 23 24 25 26') print('41 20 7 8 9 10 27') print('40 19 6 1 2 11 28') print('39 18 5 4 3 12 29') print('38 17 16 15 14 13 30') print('37 36 35 34 33 32 31') print('73 74 75 76 77 78 79 80 81') print('72 43 44 45 46 47 48 49 50') print('71 42 21 22 23 24 25 26 51') print('70 41 20 7 8 9 10 27 52') print('69 40 19 6 1 2 11 28 53') print('68 39 18 5 4 3 12 29 54') print('67 38 17 16 15 14 13 30 55') print('66 37 36 35 34 33 32 31 56') print('65 64 63 62 61 60 59 58 57') print('111 112 113 114 115 116 117 118 119 120 121') print('110 73 74 75 76 77 78 79 80 81 82') print('109 72 43 44 45 46 47 48 49 50 83') print('108 71 42 21 22 23 24 25 26 51 84') print('107 70 41 20 7 8 9 10 27 52 85') print('106 69 40 19 6 1 2 11 28 53 86') print('105 68 39 18 5 4 3 12 29 54 87') print('104 67 38 17 16 15 14 13 30 55 88') print('103 66 37 36 35 34 33 32 31 56 89') print('102 65 64 63 62 61 60 59 58 57 90') print('101 100 99 98 97 96 95 94 93 92 91') print('157 158 159 160 161 162 163 164 165 166 167 168 169') print('156 111 112 113 114 115 116 117 118 119 120 121 122') print('155 110 73 74 75 76 77 78 79 80 81 82 123') print('154 109 72 43 44 45 46 47 48 49 50 83 124') print('153 108 71 42 21 22 23 24 25 26 51 84 125') print('152 107 70 41 20 7 8 9 10 27 52 85 126') print('151 106 69 40 19 6 1 2 11 28 53 86 127') print('150 105 68 39 18 5 4 3 12 29 54 87 128') print('149 104 67 38 17 16 15 14 13 30 55 88 129') print('148 103 66 37 36 35 34 33 32 31 56 89 130') print('147 102 65 64 63 62 61 60 59 58 57 90 131') print('146 101 100 99 98 97 96 95 94 93 92 91 132') print('145 144 143 142 141 140 139 138 137 136 135 134 133') print('211 212 213 214 215 216 217 218 219 220 221 222 223 224 225') print('210 157 158 159 160 161 162 163 164 165 166 167 168 169 170') print('209 156 111 112 113 114 115 116 117 118 119 120 121 122 171') print('208 155 110 73 74 75 76 77 78 79 80 81 82 123 172') print('207 154 109 72 43 44 45 46 47 48 49 50 83 124 173') print('206 153 108 71 42 21 22 23 24 25 26 51 84 125 174') print('205 152 107 70 41 20 7 8 9 10 27 52 85 126 175') print('204 151 106 69 40 19 6 1 2 11 28 53 86 127 176') print('203 150 105 68 39 18 5 4 3 12 29 54 87 128 177') print('202 149 104 67 38 17 16 15 14 13 30 55 88 129 178') print('201 148 103 66 37 36 35 34 33 32 31 56 89 130 179') print('200 147 102 65 64 63 62 61 60 59 58 57 90 131 180') print('199 146 101 100 99 98 97 96 95 94 93 92 91 132 181') print('198 145 144 143 142 141 140 139 138 137 136 135 134 133 182') print('197 196 195 194 193 192 191 190 189 188 187 186 185 184 183')
UPDATE: this problem was solved by installing some packages. The relevant hint is highlighted in red below.
This is the salt state I used to install dependencies on my Debian 12 system:
rockbox-dev-tools: pkg.latest: - pkgs: - texinfo - texi2html - automake - autotools-dev - libtool - libtool-bin - autoconf - flex - bison - libisl-dev - libgmp-dev - libmpc-dev - libmpfr-dev
I am following these instructions: https://git.rockbox.org/cgit/rockbox.git/tree/docs/README and am having this problem:
------------------- Wed Jun 12 17:29:38 [bash:5.2.15 jobs:0 error:0 time:9641] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org/rockbox/build $ sudo ../tools/rockboxdev.sh Download directory : /tmp/rbdev-dl (set RBDEV_DOWNLOAD or use --dlwhere= to change) Install prefix : /usr/local (set RBDEV_PREFIX or use --prefix= to change) Build dir : /tmp/rbdev-build (set RBDEV_BUILD or use --builddir= to change) Make options : (set MAKEFLAGS or use --makeflags= to change) Restart step : (set RBDEV_RESTART or use --restart= to change) Target arch : (set RBDEV_TARGET or use --target= to change) Select target arch: m - m68k (iriver h1x0/h3x0, iaudio m3/m5/x5 and mpio hd200) a - arm (ipods, iriver H10, Sansa, D2, Gigabeat, older Sony NWZ, etc) i - mips (Jz47xx and ATJ-based players) x - arm-linux (Generic Linux ARM: Samsung ypr0, Linux-based Sony NWZ) y - mips-linux (Generic Linux MIPS: eg the many HiBy-OS targets) separate multiple targets with spaces (Example: "m a i" will build m68k, arm, and mips) a ROCKBOXDEV: Starting step 'binutils' ROCKBOXDEV: Downloading binutils-2.26.1.tar.bz2 using curl ROCKBOXDEV: try http://mirrors.kernel.org/gnu/binutils/binutils-2.26.1.tar.bz2 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 24.4M 100 24.4M 0 0 791k 0 0:00:31 0:00:31 --:--:-- 702k ROCKBOXDEV: extracting binutils-2.26.1 ROCKBOXDEV: Getting ISL ROCKBOXDEV: Downloading isl-0.15.tar.bz2 using curl ROCKBOXDEV: try https://gcc.gnu.org/pub/gcc/infrastructure/isl-0.15.tar.bz2 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1538k 100 1538k 0 0 595k 0 0:00:02 0:00:02 --:--:-- 595k ROCKBOXDEV: logging to /tmp/rbdev-build/build-binutils.log ROCKBOXDEV: mkdir build-binutils ROCKBOXDEV: binutils/configure ROCKBOXDEV: binutils/make ROCKBOXDEV: an error occured, please see /tmp/rbdev-build/build-binutils.log ------------------- Wed Jun 12 17:30:31 [bash:5.2.15 jobs:0 error:0 time:9694] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org/rockbox/build $ cat /tmp/rbdev-build/build-binutils.log Running '../binutils-2.26.1/configure --target=arm-elf-eabi --prefix=/usr/local --disable-docs --disable-werror' checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... arm-elf-eabi checking for a BSD-compatible install... /usr/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for a sed that does not truncate output... /usr/bin/sed checking for gawk... no checking for mawk... mawk checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether g++ accepts -static-libstdc++ -static-libgcc... yes checking for gnatbind... no checking for gnatmake... no checking whether compiler driver understands Ada... no checking how to compare bootstrapped objects... cmp --ignore-initial=16 $$f1 $$f2 checking for objdir... .libs configure: WARNING: using in-tree ISL, disabling version check checking for default BUILD_CONFIG... checking for --enable-vtable-verify... no checking for bison... bison -y checking for bison... bison checking for gm4... no checking for gnum4... no checking for m4... m4 checking for flex... flex checking for flex... flex checking for makeinfo... makeinfo checking for expect... no checking for runtest... no checking for ar... ar checking for as... as checking for dlltool... no checking for ld... ld checking for lipo... no checking for nm... nm checking for ranlib... ranlib checking for strip... strip checking for windres... no checking for windmc... no checking for objcopy... objcopy checking for objdump... objdump checking for readelf... readelf checking for arm-elf-eabi-cc... no checking for arm-elf-eabi-gcc... no checking for arm-elf-eabi-c++... no checking for arm-elf-eabi-g++... no checking for arm-elf-eabi-cxx... no checking for arm-elf-eabi-gxx... no checking for arm-elf-eabi-gcc... no checking for arm-elf-eabi-gcj... no checking for arm-elf-eabi-gfortran... no checking for arm-elf-eabi-gccgo... no checking for arm-elf-eabi-ar... no checking for arm-elf-eabi-as... no checking for arm-elf-eabi-dlltool... no checking for arm-elf-eabi-ld... no checking for arm-elf-eabi-lipo... no checking for arm-elf-eabi-nm... no checking for arm-elf-eabi-objcopy... no checking for arm-elf-eabi-objdump... no checking for arm-elf-eabi-ranlib... no checking for arm-elf-eabi-readelf... no checking for arm-elf-eabi-strip... no checking for arm-elf-eabi-windres... no checking for arm-elf-eabi-windmc... no checking where to find the target ar... just compiled checking where to find the target as... just compiled checking where to find the target cc... pre-installed checking where to find the target c++... pre-installed checking where to find the target c++ for libstdc++... pre-installed checking where to find the target dlltool... just compiled checking where to find the target gcc... pre-installed checking where to find the target gcj... pre-installed checking where to find the target gfortran... pre-installed checking where to find the target gccgo... pre-installed checking where to find the target ld... just compiled checking where to find the target lipo... pre-installed checking where to find the target nm... just compiled checking where to find the target objcopy... just compiled checking where to find the target objdump... just compiled checking where to find the target ranlib... just compiled checking where to find the target readelf... just compiled checking where to find the target strip... just compiled checking where to find the target windres... just compiled checking where to find the target windmc... just compiled checking whether to enable maintainer-specific portions of Makefiles... no configure: creating ./config.status config.status: creating Makefile Running 'gmake -j8' gmake[1]: Entering directory '/tmp/rbdev-build/build-binutils' gmake[1]: Nothing to be done for 'all-target'. mkdir -p -- ./intl mkdir -p -- ./isl mkdir -p -- ./etc Configuring in ./intl Configuring in ./isl mkdir -p -- ./libiberty Configuring in ./etc mkdir -p -- ./zlib Configuring in ./libiberty Configuring in ./zlib configure: creating cache ./config.cache checking whether to enable maintainer-specific portions of Makefiles... no checking for makeinfo... makeinfo --split-size=5000000 configure: creating cache ./config.cache checking whether gmake sets $(MAKE)... configure: creating cache ./config.cache checking for a BSD-compatible install... /usr/bin/install -c configure: creating cache ./config.cache yes checking for a BSD-compatible install... /usr/bin/install -c checking whether NLS is requested... yes configure: creating cache ./config.cache checking for a BSD-compatible install... checking for msgfmt... no checking for gmsgfmt... /usr/bin/install -c checking whether build environment is sane... : checking for xgettext... no yes checking build system type... configure: updating cache ./config.cache checking for msgmerge... no checking for x86_64-pc-linux-gnu-gcc... gcc configure: creating ./config.status checking for a thread-safe mkdir -p... x86_64-pc-linux-gnu /usr/bin/mkdir -p checking host system type... checking for gawk... mawk checking whether gmake sets $(MAKE)... yes x86_64-pc-linux-gnu checking target system type... checking whether gmake supports nested variables... yes checking for C compiler default output file name... arm-elf-eabi checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... checking whether gmake supports nested variables... (cached) yes checking for x86_64-pc-linux-gnu-gcc... gcc checking whether the C compiler works... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for perl... perl checking build system type... yes checking for C compiler default output file name... a.out checking for suffix of executables... config.status: creating Makefile checking for suffix of object files... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for x86_64-pc-linux-gnu-ar... ar checking for x86_64-pc-linux-gnu-ranlib... ranlib checking whether to install libiberty headers and static library... no configure: target_header_dir = checking for x86_64-pc-linux-gnu-gcc... gcc checking whether we are cross compiling... o checking whether we are using the GNU C compiler... gmake[2]: Entering directory '/tmp/rbdev-build/build-binutils/etc' gmake[2]: Nothing to be done for 'all'. gmake[2]: Leaving directory '/tmp/rbdev-build/build-binutils/etc' yes checking whether gcc accepts -g... no checking for suffix of object files... yes checking for gcc option to accept ISO C89... checking for C compiler default output file name... o checking whether we are using the GNU C compiler... none needed a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... yes checking whether gcc accepts -g... checking build system type... x86_64-pc-linux-gnu checking host system type... yes checking for gcc option to accept ISO C89... x86_64-pc-linux-gnu checking for x86_64-pc-linux-gnu-ranlib... ranlib checking for library containing strerror... checking for suffix of object files... none needed checking whether gcc understands -c and -o together... o checking whether we are using the GNU C compiler... none required checking how to run the C preprocessor... yes checking whether gcc accepts -g... yes checking for style of include used by gmake... gcc -E GNU checking dependency style of gcc... yes checking for gcc option to accept ISO C89... checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... none needed checking how to run the C preprocessor... /usr/bin/grep -E checking for ANSI C header files... gcc3 checking whether we are using the GNU C++ compiler... gcc -E yes checking whether g++ accepts -g... checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking dependency style of g++... gcc3 checking for C compiler vendor... yes checking for an ANSI C-conforming const... yes checking for inline... inline checking for sys/types.h... yes yes checking for sys/types.h... checking for sys/stat.h... yes gnu yes checking for stdlib.h... checking for sys/stat.h... checking build system type... x86_64-pc-linux-gnu checking host system type... yes yes checking for string.h... checking for stdlib.h... x86_64-pc-linux-gnu checking whether the compiler supports function __attribute__((__warn_unused_result__))... yes yes yes checking for __attribute__... checking for memory.h... checking for string.h... yes checking how to print strings... yes checking for strings.h... yes checking for memory.h... printf checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... yes /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... checking for inttypes.h... ld checking if the linker (ld) is GNU ld... yes yes checking for BSD- or MS-compatible name lister (nm)... nm checking the name lister (nm) interface... checking for strings.h... yes checking for stdint.h... yes checking for inttypes.h... yes BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... yes checking for unistd.h... 1572864 checking for stdint.h... checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop checking for ld option to reload object files... -r checking for x86_64-pc-linux-gnu-objdump... objdump checking how to recognize dependent libraries... pass_all checking for x86_64-pc-linux-gnu-dlltool... dlltool checking how to associate runtime and link libraries... printf %s\n checking for x86_64-pc-linux-gnu-ar... ar checking for archiver @FILE support... yes yes checking for off_t... @ checking for x86_64-pc-linux-gnu-strip... no checking for strip... strip checking for x86_64-pc-linux-gnu-ranlib... ranlib checking command to parse nm output from gcc object... checking for unistd.h... yes checking minix/config.h usability... yes checking for size_t... no checking minix/config.h presence... ok checking for sysroot... no no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... checking for x86_64-pc-linux-gnu-mt... no checking for mt... mt checking if mt is a manifest tool... no checking how to run the C preprocessor... yes yes checking for working alloca.h... checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no gcc -E checking whether gcc supports -W... yes checking for alloca... yes checking whether gcc supports -Wall... checking for ANSI C header files... yes checking for stdlib.h... (cached) yes yes checking whether gcc supports -Wwrite-strings... checking for unistd.h... (cached) yes checking for getpagesize... yes checking whether gcc supports -Wc++-compat... yes checking for working mmap... yes checking whether gcc supports -Wstrict-prototypes... yes checking whether gcc supports -pedantic ... yes checking for sys/types.h... yes checking whether gcc and cc understand -c and -o together... yes checking for sys/stat.h... yes checking whether we are using the GNU C Library 2.1 or newer... yes yes checking whether integer division by zero raises SIGFPE... checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for an ANSI C-conforming const... yes yes checking for stdint.h... checking for memory.h... yes checking for inline... yes checking for unsigned long long... yes inline checking whether byte ordering is bigendian... checking for strings.h... yes checking for inttypes.h... yes checking for inttypes.h... yes no checking for a BSD-compatible install... /usr/bin/install -c yes checking whether the inttypes.h PRIxNN macros are broken... checking for stdint.h... checking for sys/file.h... yes no checking for ld used by GCC... ld checking if the linker (ld) is GNU ld... checking for sys/param.h... yes checking for shared library run path origin... yes yes done checking for unistd.h... checking for limits.h... checking argz.h usability... yes checking for stdlib.h... (cached) yes checking for malloc.h... yes checking for dlfcn.h... yes checking argz.h presence... yes yes checking for argz.h... yes checking for string.h... (cached) yes checking limits.h usability... checking for unistd.h... (cached) yes yes checking for objdir... .libs checking for strings.h... (cached) yes checking for sys/time.h... yes checking limits.h presence... yes yes checking for limits.h... yes checking for time.h... checking locale.h usability... yes checking for sys/resource.h... checking if gcc supports -fno-rtti -fno-exceptions... yes checking locale.h presence... yes checking for locale.h... yes yes checking nl_types.h usability... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... checking for sys/stat.h... (cached) yes checking for sys/mman.h... yes checking if gcc static flag -static works... yes checking nl_types.h presence... yes checking for fcntl.h... yes checking for nl_types.h... yes checking malloc.h usability... yes checking for alloca.h... yes yes checking malloc.h presence... checking for sys/pstat.h... yes checking for malloc.h... yes no checking stddef.h usability... checking for sys/sysmp.h... yes checking if gcc supports -c -o file.o... no checking for sys/sysinfo.h... yes checking stddef.h presence... yes checking for stddef.h... yes yes checking for stdlib.h... (cached) yes checking for machine/hal_sysinfo.h... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (ld -m elf_x86_64) supports shared libraries... checking for string.h... (cached) yes yes checking for a thread-safe mkdir -p... checking for unistd.h... (cached) yes no /usr/bin/mkdir -p checking for gawk... mawk checking whether gmake sets $(MAKE)... checking for sys/table.h... yes checking dynamic linker characteristics... checking sys/param.h usability... yes checking whether to enable maintainer-specific portions of Makefiles... no checking for x86_64-pc-linux-gnu-gcc... gcc no checking for sys/sysctl.h... no yes checking sys/param.h presence... checking for sys/systemcfg.h... yes checking for sys/param.h... yes no checking for feof_unlocked... checking for stdint.h... (cached) yes checking for stdio_ext.h... yes checking for process.h... checking for C compiler default output file name... yes no checking for fgets_unlocked... checking for sys/prctl.h... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... no checking whether to build static libraries... yes yes checking for sys/wait.h that is POSIX.1 compatible... checking how to run the C++ preprocessor... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... yes yes checking whether time.h and sys/time.h may both be included... checking for getc_unlocked... g++ -E checking for suffix of object files... yes checking whether errno must be declared... o checking whether we are using the GNU C compiler... no checking size of int... yes checking for getcwd... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... 4 checking size of long... yes checking for getegid... checking for ld used by g++... ld -m elf_x86_64 checking if the linker (ld -m elf_x86_64) is GNU ld... yes checking whether the g++ linker (ld -m elf_x86_64) supports shared libraries... yes none needed checking for style of include used by gmake... GNU checking dependency style of gcc... 8 checking size of size_t... yes gcc3 checking for geteuid... checking how to print strings... printf checking for a sed that does not truncate output... checking for g++ option to produce PIC... -fPIC -DPIC checking if g++ PIC flag -fPIC -DPIC works... 8 /usr/bin/sed checking for long long... checking for grep that handles long lines and -e... yes /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... checking for getgid... ld checking if the linker (ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... nm checking the name lister (nm) interface... yes checking if g++ static flag -static works... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking for ld option to reload object files... -r checking for x86_64-pc-linux-gnu-objdump... objdump checking how to recognize dependent libraries... pass_all checking for x86_64-pc-linux-gnu-ar... ar checking for x86_64-pc-linux-gnu-strip... no checking for strip... strip checking for x86_64-pc-linux-gnu-ranlib... ranlib checking command to parse nm output from gcc object... yes checking for getuid... yes checking size of long long... yes checking if g++ supports -c -o file.o... yes checking for mempcpy... yes checking if g++ supports -c -o file.o... (cached) yes checking whether the g++ linker (ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for perl... perl checking for pdflatex... no checking for pod2html... pod2html checking for stdint types... ok 8 checking for a 64-bit type... yes checking how to run the C preprocessor... checking for munmap... uint64_t stdint.h (shortcircuit) checking for intptr_t... make use of stdint.h in include/isl/stdint.h (assuming C99 compatible system) checking which gmp to use... system checking gmp.h usability... gcc -E no checking gmp.h presence... yes checking for putenv... checking for ANSI C header files... no checking for gmp.h... no configure: error: gmp.h header not found yes checking for uintptr_t... gmake[1]: *** [Makefile:5771: configure-isl] Error 1 gmake[1]: *** Waiting for unfinished jobs.... yes checking for setenv... yes yes checking for ssize_t... checking for setlocale... yes checking for sys/types.h... yes yes checking for sys/stat.h... checking for stpcpy... yes checking for pid_t... yes checking for stdlib.h... yes yes checking for strcasecmp... checking for string.h... yes checking for library containing strerror... yes checking for memory.h... yes none required checking for asprintf... checking for strdup... yes checking for strings.h... yes yes checking for inttypes.h... checking for atexit... yes checking for strtoul... yes checking for stdint.h... yes checking for basename... yes checking for unistd.h... yes checking for tsearch... yes yes checking for dlfcn.h... checking for bcmp... yes yes checking for objdir... .libs checking for __argz_count... yes checking for bcopy... yes checking for __argz_stringify... checking if gcc supports -fno-rtti -fno-exceptions... yes checking for bsearch... yes no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... checking for __argz_next... yes checking if gcc static flag -static works... yes checking for bzero... yes checking for __fsetlocking... yes checking if gcc supports -c -o file.o... yes yes checking for iconv... checking for calloc... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... yes yes checking for iconv declaration... checking for clock... install-shextern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); checking for nl_langinfo and CODESET... yes checking for ffs... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking how to run the C preprocessor... gcc -E yes checking for LC_MESSAGES... checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes yes checking for getcwd... checking for getpagesize... yes checking for bison... bison checking version of bison... 3.8.2, ok checking whether NLS is requested... yes checking whether included gettext is requested... no checking for GNU gettext in libc... yes yes checking for working mmap... checking for getpagesize... yes checking whether to use NLS... yes checking where the gettext function comes from... libc checking for aclocal... aclocal checking for autoconf... autoconf checking for autoheader... autoheader yes checking for gettimeofday... configure: updating cache ./config.cache yes configure: creating ./config.status checking for memcpy... yes checking for index... yes checking for strerror... yes checking for insque... config.status: creating Makefile yes config.status: creating config.intl checking for unistd.h... (cached) yes config.status: creating config.h config.status: executing default-1 commands yes configure: updating cache ./config.cache checking for memchr... configure: creating ./config.status yes checking for memcmp... yes checking for memcpy... yes checking for memmem... yes checking for memmove... yes checking for mempcpy... yes checking for memset... yes checking for mkstemps... yes checking for putenv... yes checking for random... yes checking for rename... config.status: creating Makefile config.status: executing depfiles commands config.status: executing libtool commands yes checking for rindex... yes checking for setenv... yes checking for snprintf... yes checking for sigsetmask... yes checking for stpcpy... yes checking for stpncpy... yes checking for strcasecmp... yes checking for strchr... yes checking for strdup... yes checking for strncasecmp... yes checking for strndup... yes checking for strnlen... yes checking for strrchr... yes checking for strstr... yes checking for strtod... yes checking for strtol... yes checking for strtoul... yes checking for strtoll... yes checking for strtoull... yes checking for strverscmp... yes checking for tmpnam... yes checking for vasprintf... yes checking for vfprintf... yes checking for vprintf... yes checking for vsnprintf... yes checking for vsprintf... yes checking for waitpid... yes checking for setproctitle... no checking whether alloca needs Cray hooks... no checking stack direction for C alloca... 1 checking for vfork.h... no checking for fork... yes checking for vfork... yes checking for working fork... yes checking for working vfork... (cached) yes checking for _doprnt... no checking for sys_errlist... no checking for sys_nerr... no checking for sys_siglist... no checking for external symbol _system_configuration... no checking for __fsetlocking... yes checking for canonicalize_file_name... yes checking for dup3... yes checking for getrlimit... yes checking for getrusage... yes checking for getsysinfo... no checking for gettimeofday... (cached) yes checking for on_exit... yes checking for psignal... yes checking for pstat_getdynamic... no checking for pstat_getstatic... no checking for realpath... yes checking for setrlimit... yes checking for sbrk... yes checking for spawnve... no checking for spawnvpe... no checking for strerror... yes checking for strsignal... yes checking for sysconf... yes checking for sysctl... no checking for sysmp... no checking for table... no checking for times... yes checking for wait3... yes checking for wait4... yes checking whether basename is declared... yes checking whether ffs is declared... yes checking whether asprintf is declared... yes checking whether vasprintf is declared... yes checking whether snprintf is declared... yes checking whether vsnprintf is declared... yes checking whether calloc is declared... yes checking whether getenv is declared... yes checking whether getopt is declared... yes checking whether malloc is declared... yes checking whether realloc is declared... yes checking whether sbrk is declared... yes checking whether strtol is declared... yes checking whether strtoul is declared... yes checking whether strtoll is declared... yes checking whether strtoull is declared... yes checking whether strverscmp is declared... yes checking whether canonicalize_file_name must be declared... no checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking for getpagesize... (cached) yes checking for working mmap... yes checking for working strncmp... yes configure: updating cache ./config.cache configure: creating ./config.status config.status: creating Makefile config.status: creating testsuite/Makefile config.status: creating config.h config.status: executing default commands gmake[1]: Leaving directory '/tmp/rbdev-build/build-binutils' gmake: *** [Makefile:847: all] Error 2 -------------------
UPDATE: the solution to this problem was to install the package ‘libtool-bin’.
I am following these instructions: https://git.rockbox.org/cgit/rockbox.git/tree/docs/README and am having this problem:
------------------- Wed Jun 12 16:02:02 [bash:5.2.15 jobs:0 error:0 time:4385] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org $ git clone git://git.rockbox.org/rockbox Cloning into 'rockbox'... remote: Enumerating objects: 294287, done. remote: Counting objects: 100% (294287/294287), done. remote: Compressing objects: 100% (65094/65094), done. remote: Total 294287 (delta 229471), reused 292590 (delta 227774), pack-reused 0 (from 0) Receiving objects: 100% (294287/294287), 171.09 MiB | 3.97 MiB/s, done. Resolving deltas: 100% (229471/229471), done. ------------------- Wed Jun 12 16:03:02 [bash:5.2.15 jobs:0 error:0 time:4445] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org $ cd rockbox ------------------- Wed Jun 12 16:03:11 [bash:5.2.15 jobs:0 error:0 time:4454] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org/rockbox $ mkdir build ------------------- Wed Jun 12 16:03:13 [bash:5.2.15 jobs:0 error:0 time:4456] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org/rockbox $ cd build ------------------- Wed Jun 12 16:03:15 [bash:5.2.15 jobs:0 error:0 time:4458] jj5@virtuoso:/home/jj5/repo/git/git.rockbox.org/rockbox/build $ ../tools/rockboxdev.sh ROCKBOXDEV: "libtool" is required for this script to work. ROCKBOXDEV: Please install the missing tools and re-run the script. -------------------
I did install the ‘libtool’ package on my Debian system, but there is no ‘libtool’ command, only ‘libtoolize’.