# 00:01:48 |
Guma |
joins #crosstool-ng |
# 00:02:48 |
Guma |
sh4rm4: hello |
# 00:03:21 |
sh4rm4 |
Guma, https://github.com/GregorR/musl-cross/pull/35 |
# 00:03:58 |
sh4rm4 |
tl;dr: change defs.h to point to kernel-headers-3.14.6-5.tar.xz |
# 00:04:58 |
Guma |
quits : Client Quit |
# 00:04:59 |
sh4rm4 |
s/14/12/ |
# 00:05:12 |
Guma |
joins #crosstool-ng |
# 00:05:16 |
sh4rm4 |
s/14/12/ |
# 00:05:45 |
Guma |
ok I am on my machine now |
# 00:06:00 |
Guma |
Do I have to start cloning from beginning? |
# 00:06:38 |
Guma |
sould I clean first |
# 00:07:43 |
sh4rm4 |
no, dont clone again |
# 00:08:05 |
sh4rm4 |
just change the url of kernel-headers from -4 to -5 |
# 00:08:10 |
sh4rm4 |
./clean.sh |
# 00:08:31 |
sh4rm4 |
./build.sh > log 2>&1 && echo success |
# 00:09:10 |
Guma |
ok thr -4 to -5 is the only change? |
# 00:09:39 |
Guma |
sh4rm4: What about this -D/BSD? |
# 00:09:59 |
sh4rm4 |
? |
# 00:10:08 |
sh4rm4 |
ah |
# 00:10:24 |
sh4rm4 |
-D is an option that exists in gnu install since ages |
# 00:10:35 |
sh4rm4 |
and its meant to create all subdirs automatically |
# 00:10:53 |
sh4rm4 |
the BSD guys have to this day refused to adopt it |
# 00:11:18 |
sh4rm4 |
so you cant portably use install without creating all required dirs manually beforehand |
# 00:11:46 |
Guma |
So there is no point of building now since it will fail |
# 00:11:56 |
sh4rm4 |
i worked around it by using a install.sh shell script that implements those options |
# 00:12:01 |
sh4rm4 |
no |
# 00:12:13 |
sh4rm4 |
that's exactly what the -4/-5 change fixes |
# 00:12:19 |
Guma |
I see |
# 00:12:22 |
Guma |
:) |
# 00:12:33 |
Guma |
ok starting clean and build Will let you know |
# 00:13:05 |
sh4rm4 |
after build check if there is a "linux" directory somewhere in the include dirs |
# 00:13:12 |
sh4rm4 |
probably in the deeper one |
# 00:13:22 |
sh4rm4 |
i.e. not $triple/include |
# 00:13:31 |
sh4rm4 |
but $triple/$triple/include |
# 00:14:21 |
sh4rm4 |
if not look in build.log |
# 00:18:01 |
Guma |
ok. Question. Since you downloading specific kernel headers and if I ever need to build with different kernel headers ... Could I do this at some point? |
# 00:18:36 |
sh4rm4 |
yes you can |
# 00:18:52 |
sh4rm4 |
but kernel headers are generally very broken |
# 00:19:09 |
sh4rm4 |
and this package fixes the breakage encountered so far |
# 00:19:29 |
sh4rm4 |
there's not really a good reason to use a newer/older kernel header release |
# 00:20:02 |
sh4rm4 |
except for cargo-culting or if you really need the latest bleeding edge linux feature addition that you cant use via userspace headers |
# 00:20:05 |
mingwandroid_ |
quits : Remote host closed the connection |
# 00:20:14 |
Guma |
So this will not have problems with older or newer kernel targets? |
# 00:20:19 |
sh4rm4 |
nope |
# 00:20:49 |
sh4rm4 |
the structs and magic numbers used in the kernel always stay compatible |
# 00:21:33 |
Guma |
my target has 3.0.35-1.1.0. So it should be fine |
# 00:21:40 |
sh4rm4 |
yup |
# 00:21:47 |
Guma |
sweet |
# 00:22:10 |
sh4rm4 |
if we would think that the kernel headers would be problematic, we would force you to choose a specific version |
# 00:22:15 |
sh4rm4 |
like ct-ng does, lol |
# 00:22:42 |
sh4rm4 |
ct-ng: wade through menuconfig for hours until you start building |
# 00:22:48 |
Guma |
so what is the relationg of musl-cross to crosstool-ng? Totally different projects? or one is using the other? :) Trying to understand the universe |
# 00:22:54 |
sh4rm4 |
musl-cross: change 5 variables and off you go |
# 00:23:31 |
sh4rm4 |
musl-cross is the result of looking at ct-ng, realising "ugh.no, i can do this better" |
# 00:24:14 |
sh4rm4 |
however its restricted to a single libc |
# 00:24:18 |
Guma |
well I would still like to try crosstool-ng at some point just to play and learn. But looks like it has problem with case sensitive file format. Mac by default has case not sensitive that fails during setup. |
# 00:25:18 |
sh4rm4 |
*shrug* |
# 00:25:49 |
sh4rm4 |
i used ct-ng 3 or 4 times, and to get a working toolchain out of it it costed me several hours/days |
# 00:26:38 |
sh4rm4 |
but maybe that's due to complexity of getting uclibc configured |
# 00:26:51 |
sh4rm4 |
so not necessarily ct-ng's fault |
# 00:27:06 |
Guma |
So maintainers are not making it better :)... Ughhh I ma stepping in weird territories... |
# 00:27:22 |
sh4rm4 |
yes, uclibc is definitely weird territory |
# 00:27:23 |
Guma |
Can you expand on "single libc". Sorry about all this noob questions but I want to understand. Not pretend that I know :) |
# 00:27:36 |
Guma |
I guess you answer it |
# 00:27:38 |
sh4rm4 |
musl-cross builds a toolchain for musl libc |
# 00:27:44 |
Guma |
uclibc |
# 00:28:03 |
sh4rm4 |
ct-ng builds toolchains for uclibc, glibc, and eventually newlib (cant remember that one) |
# 00:28:42 |
sh4rm4 |
http://www.musl-libc.org |
# 00:28:51 |
sh4rm4 |
that's the heart of musl-cross |
# 00:28:54 |
sh4rm4 |
the C library |
# 00:28:57 |
Guma |
I just googled about uClibc |
# 00:29:16 |
sh4rm4 |
uclibc is unmaintained crap and a PITA to get set up right |
# 00:29:39 |
sh4rm4 |
it has like 1000 options you need to configure |
# 00:30:10 |
sh4rm4 |
resulting in nearly 1000^1000 different configurations |
# 00:30:38 |
sh4rm4 |
(last uclibc release was 2.5 years ago) |
# 00:31:07 |
sh4rm4 |
(almost anybody using it has a custom set of +20 patches to fix issues with that release) |
# 00:31:53 |
Guma |
ok done building |
# 00:31:56 |
sh4rm4 |
that's why many embedded projects switch to musl now |
# 00:32:15 |
sh4rm4 |
alpine linux, buildroot, openwrt, ... |
# 00:33:09 |
Guma |
"/opt/cross/arm-linux-musleabihf/include" is empty |
# 00:33:31 |
sh4rm4 |
and /opt/cross/arm-linux-musleabihf/arm-linux-musleabihf/include ? |
# 00:33:44 |
Guma |
I got this "/opt/cross/arm-linux-musleabihf/arm-linux-musleabihf/include/linux" |
# 00:33:49 |
sh4rm4 |
yay |
# 00:33:57 |
Guma |
Shabammmm |
# 00:34:06 |
Guma |
So it is all good in the hood? |
# 00:34:13 |
sh4rm4 |
seems so |
# 00:34:49 |
Guma |
So when do you have plan to release new fixes in main? |
# 00:35:19 |
sh4rm4 |
i'm not the author of musl-cross, only a contributor |
# 00:35:37 |
Guma |
also when I get around to crosstool-ng who should I talk here to help build/test/etc |
# 00:35:44 |
sh4rm4 |
and Gregor tends to leave issues open for a while |
# 00:36:10 |
sh4rm4 |
so i would calculate at least 2-3 weeks until my PR gets merged and the other issue with mac's ar got fixed |
# 00:36:47 |
sh4rm4 |
Guma, regarding ct-ng you're pretty much on your own... |
# 00:36:55 |
sh4rm4 |
this channel is usually deserted |
# 00:36:56 |
Guma |
so safe thing for me to do it to tar/gx /opt/cross and backup for now. Or just ./clean.sh and tar that folder if need to rebuild |
# 00:37:00 |
sh4rm4 |
ppl come here to ask for help |
# 00:37:05 |
sh4rm4 |
but dont get a respons |
# 00:37:05 |
sh4rm4 |
e |
# 00:37:23 |
sh4rm4 |
in 90% of the cases |
# 00:37:28 |
Guma |
is there a specific musl-cross? |
# 00:37:32 |
sh4rm4 |
no |
# 00:37:42 |
sh4rm4 |
musl-specific stuff is usually discussed in #musl |
# 00:37:55 |
sh4rm4 |
Gregor idles there as well |
# 00:38:25 |
Guma |
I see so muls-cross is here. But musl specific #musl |
# 00:38:53 |
sh4rm4 |
no, musl-cross is not here |
# 00:39:05 |
sh4rm4 |
you're just lucky that *I* am here |
# 00:39:48 |
sh4rm4 |
anyway, questions related to musl-cross are on-topic in #musl |
# 00:40:00 |
sh4rm4 |
or you just use the issue tracker on github |
# 00:40:25 |
sh4rm4 |
btw if i was you i'd put that patch to a safe place |
# 00:40:34 |
Guma |
parts #crosstool-ng |
# 00:40:37 |
Guma |
joins #crosstool-ng |
# 00:40:46 |
Guma |
Ops switching to musl |
# 00:43:06 |
Guma |
sh4rm4: so static linking is the only option right now to cross compile. I guess I can create libs locally and compile them static and link to final image. But I would also make different make on target and build statics libs as so and make dynamic linking. I know you might why WHY? :) |
# 00:43:31 |
sh4rm4 |
well |
# 00:43:37 |
sh4rm4 |
dynamic linking is tricky |
# 00:43:37 |
Guma |
I prefere ssh/vi/gdb direct but some others here need to use Eclipse |
# 00:44:08 |
Guma |
I did a lot of dynamic linking. I never had to build any toold. Always was downloading them. |
# 00:44:10 |
Guma |
:) |
# 00:44:17 |
sh4rm4 |
and ? can't they add -static to their LDFLAGS ? |
# 00:44:40 |
Guma |
but now I am in new water and would love to learn mote about building tools and kernels in much much detail slowly |
# 00:45:08 |
sh4rm4 |
is that a board developed by your company? |
# 00:45:22 |
sh4rm4 |
if so, you may consider using another distro as the base |
# 00:45:34 |
sh4rm4 |
instead of ubuntu or whatever currently runs on that board |
# 00:45:38 |
Guma |
They are not console. They come from MS Visual Studio (I know you rolling your eyes :) |
# 00:45:44 |
Guma |
but that is what it is |
# 00:46:02 |
sh4rm4 |
yes but you can configure eclipse to use a Makefile project |
# 00:46:10 |
sh4rm4 |
and the Makefile add -static to LDFLAGS |
# 00:46:16 |
sh4rm4 |
problem solved |
# 00:46:18 |
Guma |
That is what I am thinking to do |
# 00:47:13 |
feep |
joins #crosstool-ng |
# 00:47:17 |
feep |
yo |
# 00:47:22 |
feep |
sh4rm4 asked me to add feepbot here |
# 00:47:25 |
feep |
any ops with objections? |
# 00:47:38 |
feep |
I've gotten cautious ever since some people were like "what is this bot we were not informed" |
# 00:47:39 |
sh4rm4 |
yes, so i can leave .note's |
# 00:47:57 |
sh4rm4 |
not sure if the op would object tho |
# 00:48:17 |
Guma |
sh4rm4: Thank you for your help. I will be here and love to pick your mind when your time permits. Lots of questions, one at a time. THANK YOU |
# 00:48:30 |
Guma |
should I look for you here or musl directly |
# 00:48:36 |
sh4rm4 |
better #musl |
# 00:48:54 |
sh4rm4 |
y_morin may get stressed if i hijack his chan too often |
# 00:48:57 |
Guma |
ok. If there is something you want me to test new jsut let me know |
# 00:49:12 |
sh4rm4 |
everything's looking cozy now, so no |
# 00:56:10 |
sh4rm4 |
.note y_morin hello, feep ask if this nice bot which can leave messages for users can stay here |
# 00:56:22 |
sh4rm4 |
oops, feepbot isnt here |
# 00:57:43 |
feep |
:p |
# 01:13:37 |
Guma |
quits : Quit: Leaving... |
# 04:34:42 |
djerome |
joins #crosstool-ng |
# 05:39:00 |
djerome |
quits : Remote host closed the connection |
# 05:51:29 |
diorcety |
joins #crosstool-ng |
# 06:21:12 |
diorcety |
quits : Ping timeout: 240 seconds |
# 09:47:48 |
sh[4]rm4 |
joins #crosstool-ng |
# 09:49:45 |
sh4rm4 |
quits : Ping timeout: 256 seconds |
# 10:00:14 |
sh[4]rm4 |
is now known as: sh4rm4 |
# 14:27:15 |
Guma |
joins #crosstool-ng |
# 14:27:51 |
RushPL |
quits : Ping timeout: 250 seconds |
# 14:27:54 |
Guma |
quits : Read error: Connection reset by peer |
# 14:28:34 |
RushPL |
joins #crosstool-ng |
# 14:41:53 |
Guma |
joins #crosstool-ng |
# 14:59:52 |
Guma |
quits : Quit: Leaving... |
# 15:29:48 |
loide |
joins #crosstool-ng |
# 15:32:57 |
Guma |
joins #crosstool-ng |
# 15:43:56 |
Guma |
quits : Remote host closed the connection |
# 15:44:31 |
Guma |
joins #crosstool-ng |
# 15:48:08 |
Guma |
quits : Read error: Connection reset by peer |
# 15:51:32 |
Guma |
joins #crosstool-ng |
# 16:31:55 |
y_morin |
joins #crosstool-ng |
# 17:06:17 |
Guma |
quits : Remote host closed the connection |
# 17:07:05 |
Guma |
joins #crosstool-ng |
# 17:07:46 |
Guma_ |
joins #crosstool-ng |
# 17:08:35 |
Guma_ |
quits : Client Quit |
# 17:11:08 |
Guma |
quits : Ping timeout: 240 seconds |
# 18:27:09 |
mingwandroid |
joins #crosstool-ng |
# 19:07:03 |
mnt_real |
quits : Ping timeout: 255 seconds |
# 19:38:35 |
mnt_real |
joins #crosstool-ng |
# 22:27:12 |
y_morin |
quits : Quit: leaving |