Well, you're not alone, some of these problems look familiar. However they
are not universal depending upon compiler versions and what packages you are
trying to include in your dx build. It also depends upon what source you are
trying to build, you failed to mention it. I think your difficulty is the
result of memory getting stepped on: I think you misread the message: The
module returns saying there was an error, but no error code has been set: this
should not be occurring.
Here are my suggestions, which amount to a laundry list of problems I've had
with building on AIX. Back out your changes (i.e. start fresh). Please try to
keep track of what you do and the effect, so your next report can be used to
update our source.
Suggestion 1: see if the error occurs for hardware rendering (i.e. OpenGL or
are you using Mesa3D?) or software rendering. Odds are it does not occur for
both. That might help narrow it down and possibly give you a workaround while
the problems get fixed.
Potential problem #1: bad preprocessor
Try making a trivial foo.c and trying the preprocessor: On some 4.3.3
systems I get an error message
xlc -E foo.c > /dev/null
1506-173 (W) Option lm is not valid. Enter xlc for list of valid options.
Of course something internal is inserting the -lm flag and something internal
is taking exception to it. This should be ignored except configure stupidly
never tests the trivial case that should pass. So instead of configure
stopping because of a useless CPP, it goes on to make one test after another
and treat anything on stderr as a failure of the test. That causes every
configure test that uses CPP to give a result (failure) that is independent of
whatever is being tested, creating a completely useless dxconfig.h and
config.status .
My solution was to run xlc -v foo.c and examine the compiler settings in order
to copy the default defines to CPPFLAGS. Then I set CPP to /lib/cpp. Then
I run configure. End result, /lib/cpp runs with the correct aix defines
during configure, creating a correct dxconfig.h and config.status.
Potential problem #2: hdf
Another gotcha is, are you compiling with and linking hdf? If you don't need
it, skip it. There's some conflict that some appropriately motivated person
is going to have to figure out. I think when I stopped trying to link hdf
that my renderer-tromps-on-memory problems went away. Are there namespace
overlaps in the libs, or is Import calling hdf unneccessarily for non-hdf file
imports?
Potential problem #3:
Another gotcha that comes to mind involves ImageMagick libs. If you are
linking with them and using newer AIXes modify dx/src/exec/libdx/memory.c in
the #ifdef ibm6000 block. MALLOC_GLOBAL is no good (apparently you do NOT
want IM using dx's malloc replacement). Use MALLOC_NONE or possibly no define
at all.
Potential problem #4: sys_errlist
The last gotcha that comes to mind is the SP errno fixes which seem to have
broken dx's ability to print some errors (src/exec/libdx/message.c).
sys_errlist is either undefined or the index into sys_errlist for certain
errors is not within the bounds of sys_errlist and a coredump can result.
The indexing used to be checked against sys_nerr but now it isn't, go figure.
Good luck, please keep us posted.
Pete
Avi Jacob Amozes wrote:
> Hello everyone,
> I've been trying to install DX on AIX 4.3 for quite a while now. I've
> had DX running on AIX 4.2 perfectly, but when I upgraded to 4.3,
> everything just broke.
>
> The AIX 4.2 program that I had would not work on AIX 4.3 due to 4.3's
> difference in it's select function -- thus the DX UI does not work. I
> can get dx running on the 4.3 with the -script option. If anyone has run
> into this problem and solved it, please let me know.
>
> I downloaded the source code for DX and compiled it. After a successful
> compile, I tried to run DX. I didn't get the select error, but I did get
> error messages when Display, Image, or Render is getting called. The
> error messages are having to do with DXSetError not being called before
> exiting. I edited the code and placed DXSetError calls before every exit
> and when I ran it, it would break when it was trying to construct the
> image in tile.c.
>
> I have had a successful run, but this pretty much didn't use any
> display/render whatsoever. So, the problem must be something with the
> rendering. If anyone has any clue or has this actual problem and fixed
> it, please let me know. I'd also just like to know if anyone has even run
> into this problem themselves, but were unable to fix it (just so I know
> I'm not the only one! :) ).
>
> Thanks in advance,
>
> Avi Mozes
> [EMAIL PROTECTED]