Older blog entries for esden (starting at number 5)

dietlibc target

I am now finally in the stage 2 of the build. And the first thing that I see, is a problem that is bit more complex (I had this already half year ago as I was working on dietlibc). When you try to compile anything with gcc and the option -pipe it fails. But it fails iregullary. Every 10th time it compiles through. That is a very strange behaviour. I hope that I or someone else will find a solution to this problem.

I will report this bug to the dietlibc guys. Perhups they know this problem and/or a solution.

The program I used for testing looks like this:

int main() {
  return 0;
}

The error message looks like this:

/usr/dietlibc/lib-i386/start.o(.text+0x11): In function `_start':
: undefined reference to `main'
collect2: ld returned 1 exit status

funny what ?

The fixes that make the dietlibc target compile till the 2nd stage should be in the ROCKLinux cvs soon. So if someone of you likes to can take a look in it. I will appreciate all help.

But till I have a solution i will remove -pipe from the command line using the cmd_wrapper (I really appreciate that we have it in ROCKLinux)

dietlibc target

I fixed the util-linux packet. It was so trivial that it is not really worth a mention.

Now e2fsprogs is on the way. The first error it provided was that strnlen is not avalable. So I took the strlen code included in dietlibc read it and spent some hours understanding it's inner workings. Only because &~ operator was not known to me I needed so much time understanding the code and prooving to myself that it really works ;-)

The operator has the following table:

a | b | a &~ b
---------------
0 | 0 | 0
0 | 1 | 0
1 | 0 | 1
1 | 1 | 0

for the ones that do not know this operator either ;-)

And after I understood it I converted the strlen code to strnlen. It is working ... but I think it could be done better.

The other question is where it should be added in dietlibc. This function is a GNU extination ... so it probably should go in libcompat dunno .. will send the patch to dietlibc mailinglist and we will see.

gcc3

I was reading dietlibc mailing list today and what do I see. Fefe is writing that he read in this diary here about the gcc3 problem and perhups I may write some more about it. So I wrote. It was pretty shocking because I have not imagined that anyone would make an effort and read my diary. So I wave in your direction Fefe *wave* (I also read your diary :-> )

dietlibc target

The mail on dietlibc mailinglist killed my schedule. I wanted to write to the diet mailinglist when I have something to show, cuz till now it is nearly nothing. Packets are compiling but this does not say that they work at all. I will see it in the 2nd stage first.

I still have not fixed linux-utils >_< . The proseminar and lectures are consuming too much time...

I have now merged the changes of Clifford's CVS and my own tree and started a dietlibc target build once more so that everything is clean. Now I can go to bed and sleep some hours....

Addendum to yesterday

Ok the day has not continued so negatively as I expected. I found the problem about curl on my main Intel machine. Because I updated glibc to 2.3.1 some days before it was not working anymore. I recompiled curl and everything was fine.

I also fixed perl on my laptop. Do not ask me how. I simply installed some Bundles and problems were gone and I can now continue to prepare the Seminar.

I also sent a bunch of patches to Clifford fixing another half a ton of packets in the Dietlibc target. Next package that has to be fixed is linux-utils.

Today (as for now)

I forced me to get to the university and hear the "Basic Algorithms" lecture. It was pretty interesting all in all. The guy was talking about searchtrees and operation complexity on them. That is not really hard but amusing.

Now I am hungry -> hunting ;-)

7 Jan 2003 (updated 8 Jan 2003 at 11:40 UTC) »

What a day. Yesterday after fixing some more packets I realized that binutils that I was using are old. Then curl started tu drop cores ... do not ask me why. Then I deleted my data for the proseminar that I had to hold today. Thenk god I could move it to the next week.

Now axpoint (the program I use to create the transparencies) is not working because perl has some problem. I can not fix it now because here at my university I can only use wlan but my wlan card is currently freezing my system. I wanted to recompile my kernel but make menuconfig says that sed is dropping core. God what is going on ... does the whole world hate me ?

I did something VERY bad ... that is it :-(

Now I have to wait for the people that will come to the seminar to tell them that they can go home.

Then I will head towords my home too... I hope my day will not continue so negatively ....

I post my first diary entry today. It will hopefully not be the last one. One thing that I would appreciate in the diary is that others can comment your diary entry's.

Today was my lucky day I finally found a bug that prevented gcc 3.2.1 to compile under dietlibc. Now I am one step closer to the dietlibc target in RockLinux.

It was not an error in dietlibc at the beginning but a stupid gnu extination to getcwd command. gcc3 is using this command in fixincl helper program. That the standard inconformance of glibc allowed the program to run correctly, but under dietlibc it was not working. Now I created a patch and sent it to the rock mailinglist. We will see what others will say. But as I know them Clifford will simply apply it and that is it ;-)

Now I should finally write the proseminar talk. I really do not know how. But I should make it till tomorrow evening. But I would prefere to fix md5 packet in the dietlibc target now. I want to finish that target. I started it so I have to finish. The only problem is that fixing all the problems in this are very difficult because they are not really straight forward and I have to learn the interna of the packets I fix and that consumes tons of time.

Ok off to hacking ;-)

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!