Here's the funny thing -- I tried this build several times in the past without luck. I even have ImageMagick-5.5.7 unzipped in a directory under my build tree. I just tried building it again when I read your post and (as I now recall) it went into and infinite loop during the ./configure. Something like:
Code:
Select all
Xsgi[26354]: -wrapx Wrap cursor in X direction
Xsgi[26354]: -wrapy Wrap cursor in Y direction
Xsgi[26354]: -stacked Lay out screens vertically
Xsgi[26354]: -ptrdev <string> Name of core pointer device
Xsgi[26354]: -xindex <int> Index of X valuator in pointer device
Xsgi[26354]: -yindex <int> Index of Y valuator in pointer device
Xsgi[26354]: -kbddev <string> Name of core keyboard device
Xsgi[26354]: -keymap <string> Name of keymap to use
Xsgi[26354]: -inputdir <string> Specifies directory to use for input configuration files
Xsgi[26354]: -configdir <string> Specifies directory to use for input device configuration files
Xsgi[26354]: -devdir <string> Specifies directory to use for input device.
Xsgi[26354]: -ddxdir <string> Specifies directory to use for DDX modules.
Xsgi[26354]: -gamma <string> Gamma value
Xsgi[26354]: -uid <int> X server's User ID
Xsgi[26354]: -gid <int> X server's Group ID
Xsgi[26354]: -reportdecompress Report names of font files being decompressed
Xsgi[26354]: -solidroot <string> Name of solid color to initially start root window as.
Xsgi[26354]: -cursorFG <string> Name of the Cursor foreground color.
Xsgi[26354]: -cursorBG <string> Name of the Cursor background color.
Xsgi[26354]: -pbufferThreshold <string> Depth of visible framebuffer protected from interference with pbuffers.
Xsgi[26354]: -phantomcursors Enable the display of phantom hardware cursors
/usr/gfx/gfxinit: Operation not permitted
gfxinit: graphics initialize failed
./config.status[579]: $Xsed: not found
Xsgi0[26368]:
Xsgi0[26368]: Fatal server error:
Xsgi0[26368]: Couldn't create shared arena
Xsgi[26366]: use: X [:<display>] [option]
Xsgi[26366]: -a # mouse acceleration (pixels)
Xsgi[26366]: -ac disable access control restrictions
Xsgi[26366]: -audit int set audit trail level
Xsgi[26366]: -auth file select authorization file
Xsgi[26366]: bc enable bug compatibility
Xsgi[26366]: -bs disable any backing store support
Xsgi[26366]: -c turns off key-click
Xsgi[26366]: c # key-click volume (0-100)
Xsgi[26366]: -co file color database file
./config.status[579]: $Xsed: not found
/usr/gfx/gfxinit: Operation not permitted
gfxinit: graphics initialize failed
Xsgi[26366]: -core generate core dump on fatal error
Xsgi[26366]: -dpi int screen resolution in dots per inch
Xsgi[26366]: dpms enables VESA DPMS monitor control
Xsgi[26366]: -dpms disables VESA DPMS monitor control
Xsgi[26366]: -deferglyphs [none|all|16] defer loading of [no|all|16-bit] glyphs
Xsgi[26366]: -f # bell base (0-100)
Xsgi[26366]: -fc string cursor font
Xsgi[26366]: -fn string default font name
Xsgi[26366]: -fp string default font path
Xsgi[26366]: -help prints message with these options
Xsgi[26366]: -I ignore all remaining arguments
Xsgi[26366]: -logo enable logo in screen saver
./config.status[579]: Xno: not found
I remember getting stuck here once before. Well I just got a fresh copy of rss-0.7.6 source and tried again from a temp build directory. THE RESULT:
Code:
Select all
checking magick/api.h usability... yes
checking magick/api.h presence... no
configure: WARNING: magick/api.h: accepted by the compiler, rejected by the preprocessor!
configure: WARNING: magick/api.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to [email protected]. ##
configure: WARNING: ## ------------------------------------ ##
checking for magick/api.h... no
My settings are:
Code:
Select all
setenv CC cc
setenv CFLAGS '-O2 -I/usr/local/include -I/usr/freeware/include'
setenv LDFLAGS '-L/usr/local/lib -L/usr/freeware/lib32 -L/usr/lib32'
setenv PKG_CONFIG_PATH '/usr/local/lib/pkgconfig:/usr/freeware/lib32/pkgconfig'
setenv LD_LIBRARY_PATH '/usr/local/lib:usr/freeware/lib32:/usr/lib32'
./configure --prefix=/usr/local --disable-3dnow --disable-sound
I just went ahead with the "gmake" command and ignored the error message (which I what I usually do went things go wrong).:wink:
Now for the gcc/MIPSPro question
: That's a funny thing as well. If you use MIPSPro (I only have a C license, so the C++ is g++ anyways), it will chug along until it hits
reallyslick/c_src/euphoria.c
and then gmake will bomb with the ERROR
Code:
Select all
c-1079 cc: ERROR File = euphoria.c, Line = 278
A type specifier is expected.
float ATTR_ALIGN(16) up[4], right[4], crossvec[4];
^
cc-1065 cc: ERROR File = euphoria.c, Line = 278
A semicolon is expected at this point.
float ATTR_ALIGN(16) up[4], right[4], crossvec[4];
^
cc-1020 cc: ERROR File = euphoria.c, Line = 286
The identifier "up" is undefined.
up[3] = right[3] = crossvec[3] = 0;
^
cc-1020 cc: ERROR File = euphoria.c, Line = 286
The identifier "right" is undefined.
up[3] = right[3] = crossvec[3] = 0;
^
cc-1020 cc: ERROR File = euphoria.c, Line = 286
The identifier "crossvec" is undefined.
up[3] = right[3] = crossvec[3] = 0;
^
5 errors detected in the compilation of "euphoria.c".
Alright. The first time around I went in and removed the offending ATTR_ALIGN which is a macro that expands to
Code:
Select all
./src/driver.h:8:#define ATTR_ALIGN(x) __attribute__ ((aligned(x)))
./include/sse.h:22:#define ATTR_ALIGN(x) __attribute__ ((aligned(16)))
which I guess is some kind of gcc built-in function.
Now here's the trippy part....
if you edit
reallyslick/c_src/Makefile
and change line #47 from "cc" to "gcc" and then rerun "gmake" from the command line you'll get:
Code:
Select all
source='euphoria.c' object='euphoria.o' libtool=no \
depfile='.deps/euphoria.Po' tmpdepfile='.deps/euphoria.TPo' \
depmode=sgi /bin/sh ../../depcomp \
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I../../src -O2 -I/usr/local/include -I/usr/freeware/include -c `test -f 'euphoria.c' || echo './'`euphoria.c
gcc: .deps/euphoria.TPo: No such file or directory
gcc: unrecognized option `-MDupdate'
gmake: *** [euphoria.o] Error 1
holmes4:~/temp/rss-glx_0.7.6/reallyslick/c_src:gmake
source='stringify.c' object='stringify.o' libtool=no \
depfile='.deps/stringify.Po' tmpdepfile='.deps/stringify.TPo' \
depmode=sgi /bin/sh ../../depcomp \
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I../../src -O2 -I/usr/local/include -I/usr/freeware/include -c `test -f 'stringify.c' || echo './'`stringify.c
gcc: .deps/stringify.TPo: No such file or directory
gcc: unrecognized option `-MDupdate'
gmake: *** [stringify.o] Error 1
It's crazy, but then just toggle the Makefile line back to 'cc' and run 'gmake' again. You will next bump into a identical problem with
lattice.c
. Just toggle the Makefile CC varaible back and forth again and it will build too.
Too weird
, but both executables run fine, and the remainder builds without incident. So to answer your question --
it's both!
As for the ImageMagick issue, here's a clue:
there used to be a note on the RSS-GLX web site that MatrixView used a function only found in the newer verion of libpng, which caused me some grief on a previous attempt. I even went and got the new libpng and libz, which built fine as I noted in the news blog -- but was later surprised went nothing seems to link to them. My guess, the version 0.7.6 of the source is really a
0.7.6a
modified version that removed some of the extra library dependencies.
Sorry, for the long winded answer, but as you can tell it really was
just dumb luck
this time around and not genius on my part. I am, and probably always be just a hack as this sort of thing, not a pro or even a real serious student. Good thing it's just computers and not rocket science.