David Cleaver on Fri, 14 Mar 2003 18:37:16 -0600 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Problem with make bench... |
Hello all, I went into the Ocygwin-i686 dir and typed make bench. But all it gave me was a bunch of "echo"'s of a file (libpari_dll.h) it was creating and the contents of it (which included #ifndef libpari_GLOBALS_H). Then after all the echo's make came back with: make: *** No rule to make target 'libpari_globals.h' needed by gp-dyn.o. Stop. So, I copied libpari_dll.h to a file called libpari_globals.h. Typing make bench at that point produced the following: $ make bench rm -f libpari-2.2.a ar r libpari-2.2.a *.o (*.o to mean all the object files) /usr/bin/ranlib libpari-2.2.a echo '.section .idata$3' > dll_fixup.s echo '.long 0,0,0,0,0' >> dll_fixup.s /usr/bin/as -o dll_fixup.o dll_fixup.s echo '#include <stdio.h>' > dll_init.c echo 'extern struct _reent *_impure_ptr;' >> dll_init.c echo 'extern __declspec(dllimport) struct _reent reent_data;' >> dll_init.c echo '__attribute__((stdcall))' >> dll_init.c echo 'int dll_entry(int handle, int reason, void *ptr)' >> dll_init.c echo '{ _impure_ptr = reent_data; return 1; }' >> dll_init.c /usr/bin/gcc -O3 -DGCC_INLINE -Wall -fomit-frame-pointer -DBOTH_GNUPLOT_AND_X11 -I. -I../src/headers -c -o dll_init.o dll_init.c dll_init.c: In function 'dll_entry': dll_init.c:6: incompatible types in assignment make: *** [dll_init.o] Error 1 I then changed the code in that last line to read: "_impure_ptr = &reent_data;" and make bench successfully created dll_init.o. Then typing make bench produced a lot of output so I typed "make bench > output.txt" which put all the normal output into the text file and output the errors to the screen which was: $ make bench > output.txt dlltool: Syntax error in def file libpari-2.2.def:1 libpari-2.2.exp(.edata+0x38):fake: undefined reference to '_libpari' collect2: ld returned 1 exit status make: *** [libpari-2.2.dll] Error 1 So, this one I don't know how to fix. Can anyone see where I might have gone wrong or know what I might be able to do to get this to work? Thanks for any help. -David C.