On Monday 20 April 2009 18:35:19 Jeff Gilchrist wrote:
> I'm not sure what is going on but I can't reproduce that two main
> error. If you look at the last part of config.guess with some of my
> new debug code inserted:
>
> NOW TRYING AGAIN
> **** HERE 0 : cc
> dummy-423232.c:8: warning: return type defaults to âintâ
> dummy-423232.c: In function âmainâ:
> dummy-423232.c:26: warning: implicit declaration of function âcpuidâ
> dummy-423232.c:41: warning: implicit declaration of function âstrcmpâ
> dummy-423232.c:118: warning: implicit declaration of function âprintfâ
> dummy-423232.c:118: warning: incompatible implicit declaration of
> built-in function âprintfâ
> /tmp/cco.4PC7PX: In function `main':
> /work/jeffg/mpir-1.1/dummy-423232.c:8: multiple definition of `main'
> /tmp/cco.4PC7PX:/work/jeffg/mpir-1.1/dummy-423232.c:8: first defined here
> /tmp/cco.4PC7PX: In function `main':
> (.text+0x5b): undefined reference to `cpuid'
> /tmp/cco.4PC7PX: In function `main':
> (.text+0x76): undefined reference to `cpuid'
> /tmp/cco.4PC7PX: In function `main':
> (.text+0x5b): undefined reference to `cpuid'
> /tmp/cco.4PC7PX: In function `main':
> (.text+0x76): undefined reference to `cpuid'
> collect2: ld returned 1 exit status
> **** HERE 2*
> **** HERE 3: dummy-423232.c
> x86_64-unknown-linux-gnu
>
> This is from the code:
>
> echo "NOW TRYING AGAIN"
>
> if test -z "$exact_cpu"; then
> echo "**** HERE 0 : $CC_FOR_BUILD"
> if ($CC_FOR_BUILD ${dummy}32.s ${dummy}32.c -o $dummy) ; then
> # On 80386 and early 80486 cpuid is not available and will result in a
> # SIGILL message, hence 2>/dev/null.
> #
> # On i386-unknown-freebsd4.9, "/bin/sh -c ./dummy" seems to send an
> # "Illegal instruction (core dumped)" message to stdout, so we test $?
> # to check if the program run was successful.
> #
> echo "**** HERE 1*"
> x=`$SHELL -c ./$dummy 2>/dev/null`
> if test $? = 0 && test -n "$x"; then
> exact_cpu=$x
> fi
> fi
> echo "**** HERE 2*"
> fi
> fi
> echo "**** HERE 3: ${dummy}32.c"
> # We need to remove some .o files here since lame C compilers
> # generate these even when not asked.
> cp ${dummy}32.c jeff32.c
> cp ${dummy}32.s jeff32.s
> rm -f ${dummy}64.s ${dummy}64.o ${dummy}64.c ${dummy}32.s
> ${dummy}32.o ${dummy}32.c $dummy
> ;;
>
> So it does the $CC_FOR_BUILD ${dummy}32.s ${dummy}32.c -o $dummy
> compile and I copy the .s and .c file so you can take a look. There
> is only one main() in the .c file, my assembler knowledge is rusty but
> I'm attaching both files. If I try to compile cc -c I get no
> complaints but when I try the command above I do get the error about
> two mains. gcc on the same files give this error:
>
So
cc jeff32.s jeff32.c -o test1
gives no errors
comment out this line
rm -f ${dummy}64.s ${dummy}64.o ${dummy}64.c ${dummy}32.s ...
so we dont delete the originals
and try
cc number32.s number32.c -o test1
where number are whatever they are
> jeff32.s:5: Error: suffix or operands invalid for `push'
> jeff32.s:6: Error: suffix or operands invalid for `push'
> jeff32.s:14: Error: suffix or operands invalid for `pop'
> jeff32.s:15: Error: suffix or operands invalid for `pop'
> jeff32.c: In function âmainâ:
> jeff32.c:118: warning: incompatible implicit declaration of built-in
> function âprintfâ
>
> Jeff.
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"mpir-devel" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/mpir-devel?hl=en
-~----------~----~----~----~------~----~------~--~---