BankHacker wrote:
It seems that maybe we can just say the whole problem comes down to that
rand() from dynamically linked libc.so.6 is slower to execute than what
is supposed to be the same code statically linked.
Yes, glibc is under suspicion. There are several indications ...
If you can't get random_r() to work (see eg
http://refspecs.freestandards.org/LSB_1.2.0/gLSB/baselib-random-r-3.html
I am trying to implement random_r function. This is my try:
### prueba.c #####################################################
#include <stdio.h>
#include <stdlib.h>
int32_t r;
struct random_data rand_data;
int main(int argc, char ** argv) {
random_r(&rand_data, &r);
printf("%d\n", (int)r);
return (0);
}
### prueba.c (the end) ###########################################
But I obtain this result:
# gcc prueba.c -o prueba -Wall -pedantic
# ./prueba
Segmentation fault
I am doing something wrong. Any hint?
Thanks!
Yes your not defining a value for r. Then your definition of a type
of integer is not the way to do it. You define a structure and then use
it wrong. Other than that it's fine.
Karl