# 00:02:13 |
y_morin |
quits : Quit: Nighty Night |
# 01:05:47 |
beb |
is now known as: f8l |
# 02:33:18 |
Net147 |
quits : Ping timeout: 272 seconds |
# 02:39:05 |
Net147 |
joins #crosstool-ng |
# 03:19:06 |
bhundven |
mingwandroid: ok, so gcc-5.3.0 is merged |
# 03:19:19 |
bhundven |
the cygwin PR is for 5.3.0, right? |
# 03:19:48 |
mingwandroid |
I had some updates ready to go.. |
# 03:19:54 |
mingwandroid |
let me see if I pushed .. |
# 03:21:01 |
bhundven |
oh, I see, it has 5.3.0, but also 5.2.0 |
# 03:21:20 |
bhundven |
You can drop the 5.2.0, because of the way that gcc changed their branching |
# 03:21:25 |
mingwandroid |
yeah, 4.x has significant layout differences, so backporting isn't simple. |
# 03:21:40 |
mingwandroid |
what was changed? |
# 03:22:01 |
bhundven |
well, with gcc 4.9.x and older, it branched on the minor version |
# 03:22:13 |
bhundven |
but with 5.x and newer it branches on the major |
# 03:22:38 |
bhundven |
so they never release (tarballs) for 5.2.1 or 5.3.1 |
# 03:22:46 |
bhundven |
they are branch updates only |
# 03:23:00 |
bhundven |
so if 5.3.0 comes out, there isn't a new 5.3 branch |
# 03:23:07 |
bhundven |
it's just in the same gcc_5 branch |
# 03:23:26 |
bhundven |
so if gcc 5.3.0 is released, 5.2.0 is replaced with 5.3.0 |
# 03:23:51 |
bhundven |
I think it's kind of a bummer, because we never get a 5.2.1 or 5.2.2 |
# 03:24:21 |
bhundven |
but hopefully when I get the newer VCS support in ct-ng, we can offer that through svn/git |
# 03:27:39 |
bhundven |
you can see this change at the bottom of: https://gcc.gnu.org/develop.html |
# 03:39:00 |
mingwandroid |
sounds weird. |
# 03:39:42 |
mingwandroid |
like they're just not having patch releases at all basically? |
# 03:42:48 |
mingwandroid |
or they kind of are, but they just shifted the decimal places to the right or something like that. It's late though and I'm tired, but yeah, I'll drop the 5.2, fwiw, I don't care for anything but the latest in all things. |
# 03:58:37 |
bhundven |
hehe |
# 03:58:47 |
bhundven |
ok, I'll hold off on that one. |
# 04:04:22 |
mingwandroid |
ok, I'll delete the 5.2.0 one tomorrow, going to have to sleep very soon now! |
# 09:38:04 |
y_morin |
joins #crosstool-ng |
# 09:38:39 |
bhundven |
howdy, y_morin! |
# 09:39:02 |
y_morin |
bhundven: Hello! |
# 10:31:08 |
diorcety |
joins #crosstool-ng |
# 10:55:57 |
diorcety |
quits : Quit: Leaving. |
# 11:16:28 |
diorcety |
joins #crosstool-ng |
# 11:21:34 |
coffeeholic |
joins #crosstool-ng |
# 11:21:39 |
coffeeholic |
Hello bhundven. |
# 11:22:02 |
bhundven |
:D |
# 11:22:20 |
y_morin |
coffeeholic: Hey too! |
# 11:23:27 |
bhundven |
ok, so I'm just looking for anything specific to the toolchain config in buildroot that will help me make a sample, then maybe you can build it and try building busybox with it |
# 11:24:01 |
bhundven |
I guess I could also build a static toolchain and just upload it somewhere |
# 11:27:27 |
bhundven |
coffeeholic: so, I'm guessing you are using newlib? |
# 11:27:40 |
bhundven |
or uClibc? |
# 11:27:45 |
coffeeholic |
It's uclibc. |
# 11:27:49 |
coffeeholic |
I was just about to say that. |
# 11:28:56 |
bhundven |
soft or hard float (guessing soft) |
# 11:29:04 |
coffeeholic |
Soft-Float. |
# 11:29:45 |
bhundven |
and using tune/cpu=arm7tdmi |
# 11:30:03 |
bhundven |
any other specific options that you use? |
# 11:30:11 |
coffeeholic |
None that I remember now. |
# 11:30:16 |
bhundven |
ok |
# 11:30:43 |
bhundven |
I guess if you want to paste your buildroot config somewhere, I can just figure it out |
# 11:31:29 |
coffeeholic |
bhundven: Wow, thank you very much. I hope I can help, as I brought up the problem. |
# 11:33:40 |
bhundven |
hrm, yea! I need more diverse samples like this to keep crosstool-ng working properly! :) |
# 11:34:13 |
bhundven |
y_morin: sadly, I forget how I enable elf2flt for an arch. |
# 11:34:14 |
bhundven |
:P |
# 11:34:28 |
coffeeholic |
bhundven: That's a fun way to say "Shitty awful weird SOCs." |
# 11:35:14 |
bhundven |
pft, nah. |
# 11:35:33 |
bhundven |
I have a few of them myself, but luckily their bootloaders support elf. |
# 11:35:39 |
bhundven |
I never tried to run flt on them |
# 11:35:47 |
bhundven |
(baremetal, not uClibc) |
# 11:35:54 |
y_morin |
bhundven: Hmm.. neither do I! :-/ |
# 11:35:57 |
y_morin |
Lemme see... |
# 11:35:58 |
bhundven |
hehe |
# 11:36:15 |
bhundven |
don't worry, I'll figure it out. I don't want to interrupt your "fun time" with asterisk |
# 11:36:19 |
bhundven |
:D |
# 11:36:25 |
bhundven |
jk |
# 11:36:33 |
y_morin |
:-) |
# 11:36:41 |
y_morin |
Damn, where's help2man coming from? |
# 11:36:42 |
coffeeholic |
bhundven: Unfortunately, I could not select arm7tdmi in the buildroot menuconfig. |
# 11:37:10 |
bhundven |
y_morin: idk, but I'm getting close to cleaning up the selector to build or not build docs |
# 11:37:22 |
bhundven |
so those requirements can be optional |
# 11:38:08 |
bhundven |
I think it was libicov |
# 11:38:12 |
y_morin |
bhundven: Yeah, at one point in time, I complete;ly managed to get rid of the docs. But it was quitre complex... |
# 11:38:32 |
bhundven |
bleh |
# 11:39:40 |
y_morin |
bhundven: If you set the binary format to something than 'ELF' you automatically get elf2flt enabled. |
# 11:39:51 |
bhundven |
y_morin: I got the flat figured out :) |
# 11:40:04 |
bhundven |
ARCH_HAS_NO_MMU=y |
# 11:40:16 |
y_morin |
Yep. |
# 11:41:18 |
y_morin |
bhundven: However, with FLAT, ct-ng does not support building uClibc. |
# 11:41:37 |
bhundven |
oh |
# 11:42:00 |
coffeeholic |
bhundven: Here is my buildroot .config: http://pastebin.com/raw/iVt4uyVQ |
# 11:42:13 |
coffeeholic |
I'm relatively new to embedded linux. |
# 11:42:26 |
y_morin |
bhundven: Forget it, I was on bare-metal... |
# 11:44:24 |
bhundven |
y_morin: :) |
# 11:44:56 |
y_morin |
bhundven: Unsupported no-mmu arch 'arm' ... :-( |
# 11:45:27 |
y_morin |
bhundven: Weird, we refuse to build the kernel headers for nommu arm... :-/ |
# 11:45:34 |
y_morin |
bhundven: We only accpet it for m68k. |
# 11:46:52 |
bhundven |
easily fixed :] |
# 11:46:57 |
y_morin |
bhundven: scripts/build/kernel/linux.sh --> Other targets should be added here when someone starts to care about them. |
# 11:47:00 |
y_morin |
Aha! |
# 11:47:19 |
y_morin |
goes for lunch... |
# 11:47:40 |
bhundven |
thanks y_morin! |
# 11:48:26 |
coffeeholic |
will now also grab a bite |
# 11:48:28 |
bhundven |
hehe, well... previously unsupported ;) |
# 11:48:36 |
bhundven |
supported soon. |
# 11:48:50 |
bhundven |
enjoy! |
# 11:49:30 |
bhundven |
building |
# 11:59:08 |
bhundven |
cool, new elf2flt dl's and builds |
# 12:06:58 |
bhundven |
https://github.com/crosstool-ng/crosstool-ng/pull/310 |
# 12:11:54 |
bhundven |
haha |
# 12:12:13 |
bhundven |
ld (ld-elf2flt): error trying to exec '/home/bhundven/x-tools/arm-arm7tdmi-linux-uclibcgnueabi/bin/ld.real': execvp: No such file or directory |
# 12:12:34 |
bhundven |
ls /home/bhundven/x-tools/arm-arm7tdmi-linux-uclibcgnueabi/bin/ |
# 12:12:40 |
bhundven |
arm-arm7tdmi-linux-uclibcgnueabi-ld.real |
# 12:12:47 |
bhundven |
no symlink |
# 12:12:52 |
bhundven |
>.< |
# 12:18:15 |
bhundven |
https://github.com/uclinux-dev/elf2flt/blob/master/ld-elf2flt.c#L529 |
# 12:19:13 |
bhundven |
even though makefile.in does: https://github.com/uclinux-dev/elf2flt/blob/master/Makefile.in#L115 |
# 12:42:03 |
coffeeholic |
bhundven: Nice discovery :-) |
# 12:44:01 |
bhundven |
well, ct-ng is also a bit weird sometimes. I'm testing some other possibilities. |
# 12:44:10 |
bhundven |
s/weird/picky/ |
# 12:46:13 |
bhundven |
and I've mucked with this thing abit since the last elf2flt user was removed, and I might have broke something, wrt elf2flt. |
# 12:47:26 |
coffeeholic |
bhundven: I suspect that MMU-less systems aren't going away for at least a while. |
# 12:48:00 |
coffeeholic |
There still is a vast range of μCs which can in theory run Linux, but have no MMU. |
# 12:48:04 |
coffeeholic |
What do you think? |
# 12:51:25 |
bhundven |
I'm not sure |
# 12:59:07 |
bhundven |
taps fingers... waits for build to pass/break... |
# 12:59:19 |
coffeeholic |
Good Luck? |
# 13:00:15 |
coffeeholic |
I might forgo buildroot altogether in the future, because it does seem kind of clunky and big. |
# 13:00:45 |
bhundven |
I use buildroot a lot |
# 13:01:09 |
bhundven |
it depends on what you're trying to do though. |
# 13:02:51 |
bhundven |
what is your purpose to use linux on mcu? |
# 13:04:27 |
coffeeholic |
I have an IP camera, on which I wish to run custom software. |
# 13:05:04 |
coffeeholic |
The original firmware is linux-based, which makes sense given that the thing uses WiFi and USB a lot. |
# 13:06:15 |
bhundven |
huh, ok |
# 13:06:48 |
coffeeholic |
Both the WiFi module and the camera module are connected via USB. |
# 13:10:05 |
bhundven |
I have this efm32 cortex-m3 board that can run linux (kinda buggy), but it's much more fun to use cmsis and just use it bare-metal. |
# 13:11:02 |
bhundven |
I think it's more fun to mess around with then raspberrypi or the intel galileo |
# 13:11:32 |
coffeeholic |
The Intel Galileo is, i.m.h.o., nonsense. |
# 13:11:46 |
coffeeholic |
x86 is not my favourite CPU architecture. |
# 13:12:31 |
coffeeholic |
Instead of throwing money and brains on an overcomplicated awful instruction set⦠But I digress. |
# 13:12:59 |
bhundven |
:D |
# 13:17:29 |
bhundven |
well, this keeps breaking the same way |
# 13:17:39 |
bhundven |
maybe y_morin knows when he gets back |
# 13:17:57 |
coffeeholic |
To me, this looks more and more like a possible bug in ld-elf2flt. |
# 13:18:10 |
bhundven |
or something I messed up |
# 13:18:14 |
bhundven |
(more likely) |
# 13:18:33 |
coffeeholic |
is very likely to produce PEBKAC |
# 13:18:49 |
coffeeholic |
Who knows what I screwed up with buildroot. |
# 13:18:54 |
bhundven |
well, the last user of elf2flt was blackfin |
# 13:19:15 |
bhundven |
I should go rummage through commits and see if I dorked something. |
# 13:19:42 |
coffeeholic |
Mhmm, so elf2flt support in buildroot is rotting? |
# 13:20:32 |
bhundven |
no |
# 13:21:04 |
bhundven |
the only thing rotting is the lack of use of it |
# 13:21:15 |
bhundven |
which cause it to not get tested |
# 13:21:43 |
bhundven |
then nommu users stumble on it. |
# 13:21:53 |
bhundven |
which, is good, but not good at the same time. |
# 13:21:55 |
coffeeholic |
Understandably. |
# 13:21:58 |
bhundven |
bad coverage testing |
# 13:22:08 |
bhundven |
which is why I want to get this added/working. |
# 13:22:18 |
coffeeholic |
*thumbs up* |
# 13:44:03 |
bhundven |
ok, I think the problem I'm running into is a crosstool-ng issue, specifically with uClibc |
# 13:44:16 |
bhundven |
well, building headers for uClibc |
# 13:44:47 |
bhundven |
LD seems to be set to "ld" |
# 13:45:04 |
bhundven |
instead of "${CT_TARGET}-ld" |
# 13:45:22 |
bhundven |
which would, in my case be: arm-unknown-linux-uclibcgnueabi-ld |
# 13:46:54 |
bhundven |
wbx: ? |
# 14:18:30 |
bhundven |
Ah-ha |
# 14:19:19 |
coffeeholic |
What is it? :-) |
# 14:20:42 |
bhundven |
complicated ;) |
# 14:21:16 |
coffeeholic |
I'm curious. Hit me. |
# 14:23:08 |
wbx |
bhundven: my copy of elf2flt should be fine for most uClibc-ng supported architectures. |
# 14:23:40 |
bhundven |
wbx: it's some other stupid ct-ng bug, with elf2flt |
# 14:23:57 |
wbx |
bhundven: the links are important an tricky. |
# 14:24:12 |
wbx |
bhundven: i recently found a bug regarding elf2flt in OpenADK, too. |
# 14:25:10 |
bhundven |
y_morin: we setup ${CT_BUILDTOOLS_PREFIX_DIR}/bin |
# 14:25:21 |
wbx |
bhundven: you need to symlink short ld and long ld version, as short version is used internally in gcc sometimes |
# 14:25:32 |
bhundven |
y_morin: but then we have ${CT_BUILDTOOLS_PREFIX_DIR}/${CT_TARGET}/bin that also links back to the previous dir |
# 14:25:49 |
bhundven |
maybe that is a mistake? |
# 14:26:19 |
wbx |
bhundven: show me ls -laR of your ${CT_BUILDTOOLS_PREFIX_DIR} |
# 14:26:39 |
bhundven |
ah, ok, nevermind. I get it |
# 14:26:57 |
bhundven |
so install of elf2flt does this |
# 14:27:17 |
bhundven |
https://github.com/uclinux-dev/elf2flt/blob/master/Makefile.in#L115 |
# 14:27:23 |
bhundven |
renames ld to ld.real |
# 14:27:27 |
bhundven |
but |
# 14:27:35 |
bhundven |
that ld symlink does not get nuked, re-linked |
# 14:27:46 |
bhundven |
so ld points to the wrong ld |
# 14:28:10 |
wbx |
i don't use the install target in elf2flt. |
# 14:28:50 |
bhundven |
or, technically, I'm still wrong. |
# 14:28:58 |
bhundven |
another symlink needs to be made |
# 14:29:10 |
bhundven |
that links ld.real to prefix/bin/ld.real |
# 14:29:16 |
bhundven |
er |
# 14:29:25 |
bhundven |
that links ld.real to prefix/bin/$target-ld.real |
# 14:29:38 |
bhundven |
ok |
# 14:29:57 |
bhundven |
it's just an if statement that needs to be added after elf2flt is installed |
# 14:30:03 |
bhundven |
:P |
# 14:43:54 |
bhundven |
I could probably sit in this irc channel by myself, and just talk to myself to debug issues :P |
# 14:44:02 |
bhundven |
lol |
# 14:45:20 |
bhundven |
I'm pretty sure the solution is here: https://github.com/crosstool-ng/crosstool-ng/blob/master/scripts/build/binutils/binutils.sh#L125 |
# 14:46:25 |
bhundven |
https://pastebin.osuosl.org/36291/ |
# 14:47:13 |
bhundven |
while we're making symlinks to the linkers we are creating in binutils, if we are building elf2flt, also create a symlink to ld.real |
# 14:48:50 |
coffeeholic |
bhundven: IRC would then be your (though possibly sentient) rubber duck. |
# 14:49:21 |
bhundven |
coffeeholic: yup! exactly. |
# 14:49:52 |
bhundven |
it was wbx's comment: bhundven: the links are important an tricky. |
# 14:50:06 |
bhundven |
that triggered my memory about the symlinks |
# 14:50:56 |
coffeeholic |
Looks like that might also be the cause of my trouble with buildroot. |
# 14:51:10 |
bhundven |
maybe |
# 14:51:19 |
bhundven |
I'll look at the buildroot code too |
# 14:51:28 |
coffeeholic |
Thank you very much. |
# 14:51:32 |
bhundven |
while I'm waiting for this ct-ng build |
# 14:59:55 |
bhundven |
ok, and maybe there might be some weird bug with elf2flt |
# 15:00:30 |
bhundven |
if you pass --disable-ld-elf2flt-binary to configure for elf2flt |
# 15:01:05 |
bhundven |
it looks for ld in .build/${CT_TARGET}/buildtools/${CT_TARGET}/bin |
# 15:01:11 |
bhundven |
but if you don't pass that |
# 15:01:35 |
bhundven |
it looks in prefix/bin |
# 15:02:24 |
bhundven |
I'm running another build, but outputting $PATH before running gcc to make the dummy libc.so and libm.so |
# 15:03:35 |
bhundven |
if you pass that configure option, it uses a shell script wrapper instead of a binary wrapper. |
# 15:04:02 |
coffeeholic |
Ahh, I already wondered why ld-elf2flt.sh still exists. |
# 15:04:53 |
bhundven |
yea, but buildroot uses the binary wrapper |
# 15:05:58 |
coffeeholic |
I can't blame them for it. The binary wrapper is much newer, I think. |
# 15:07:20 |
bhundven |
coffeeholic: do you have the full buildroot log? not just where it fails? |
# 15:08:19 |
coffeeholic |
bhundven: In a minute, unless buildroot stores it on disk somewhere. |
# 15:12:40 |
bhundven |
yup, I think it is a bug with the elf2flt binary wrapper |
# 15:12:56 |
coffeeholic |
https://pastebin.osuosl.org/36296/raw/ |
# 15:15:16 |
bhundven |
or it's a bug in how we pass the path to the binutils tools |
# 15:17:18 |
bhundven |
did you forget to run make clean? |
# 15:17:32 |
coffeeholic |
Ooops, maybe. |
# 15:17:37 |
coffeeholic |
Let's try that again. |
# 15:17:54 |
bhundven |
:) |
# 15:18:27 |
coffeeholic |
Ah, I see, you want to watch buildroot build the toolchain. |
# 15:20:05 |
bhundven |
yup |
# 15:29:24 |
coffeeholic |
bhundven: Arrg! rm (run by make clean) is in state 'D+', but the disk does not seem to do anything. |
# 15:29:59 |
bhundven |
hurm? |
# 15:30:50 |
coffeeholic |
`make clean` somehow hangs. |
# 15:33:10 |
bhundven |
I don't think I've ever seen that |
# 15:33:15 |
coffeeholic |
neither |
# 15:51:04 |
bhundven |
man this gcc script is a mess |
# 15:53:24 |
bhundven |
I find issues, while I'm trying to find other issues in 100-gcc.sh |
# 16:04:42 |
coffeeholic |
That rm process is still stuck. I'll reboot soon. |
# 16:05:17 |
bhundven |
mingwandroid: I think as soon as I figure out this stupid elf2flt issue, I'm going to spend the day unwinding 100-gcc.sh |
# 16:06:03 |
mingwandroid |
bhundven: ok, I pushed cygwin-more-fixes with the 5.2.0 removed |
# 16:07:06 |
mingwandroid |
bhundven: it'd be good to get that merged in, I want to get MSYS2 up and running so I can add AppVeyor CI. I need to ask them for a special favour for longer builds for me .. |
# 16:07:10 |
bhundven |
mingwandroid: can you look at that new issue? is that something fixed by your patch? |
# 16:07:21 |
bhundven |
#311 |
# 16:12:12 |
bhundven |
mingwandroid: merged |
# 16:12:43 |
mingwandroid |
cool, thanks. there may be some very minor ones to fixup MSYS2 issues (as AppVeyor has that and not Cygwin) |
# 16:12:57 |
mingwandroid |
that way we can CI some Windows things. |
# 16:59:46 |
bhundven |
coffeeholic: well, with some futzing, I was able to get a build to get further using the shell wrapper. |
# 17:00:04 |
bhundven |
I'm still not sure why the binary wrapper is not looking in the right directory. |
# 17:00:09 |
coffeeholic |
bhundven: Oh, nice. |
# 17:01:47 |
bhundven |
I'm not sure, maybe y_morin might know better, but you should be able to use this toolchain as an external to buildroot. |
# 17:02:44 |
coffeeholic |
Yes, buildroot has the option to use an external toolchain. |
# 17:03:21 |
bhundven |
sure, i'm just saying YMMV, let me know if you run into issues. |
# 17:03:33 |
coffeeholic |
Will do. |
# 17:04:00 |
bhundven |
granted, I need this build to finish, then I'm gonna push this stuff to the same PR |
# 17:04:14 |
bhundven |
https://github.com/crosstool-ng/crosstool-ng/pull/310 |
# 17:04:21 |
bhundven |
but it's not there yet. |
# 17:04:59 |
bhundven |
heh, I woke up yesterday at 4pm. |
# 17:05:07 |
bhundven |
it's 9am |
# 17:05:15 |
bhundven |
-0800 |
# 17:23:30 |
bhundven |
coffeeholic: yea, I can't get a build working |
# 17:23:54 |
bhundven |
I'm going to take a break for a while, I'll be back later. |
# 17:25:35 |
mingwandroid |
ok |
# 19:06:57 |
coffeeholic |
bhundven: I finally got around to producing a full build log of buildroot. https://pastebin.osuosl.org/36301/raw/ I decided to run a verbose build, so the file has quite many lines. |
# 23:22:59 |
diorcety |
quits : Read error: Connection reset by peer |
# 23:24:16 |
diorcety |
joins #crosstool-ng |
# 23:26:22 |
y_morin |
quits : Quit: Nighty Night! |
# 23:35:14 |
coffeeholic |
Is arm really not supported as a no-mmu arch? |
# 23:38:38 |
coffeeholic |
Ah, ok, after having a quick glimpse at the code I see it actually is. |