Thanks Antonio and Jan, I have already hit the #define Success problem sometime in the past -- so I was able to #undef Status in the same place and everything is working fine now.
In addition to a better error message (which may be out of your control), perhaps Eigen could add a simple test program in the unit tests that builds against XWindows (as it seems to be a huge offender) -- and perhaps a page of documentation about working with XWindows to help resolve these problems. Thanks for everything, Rob On Wed, Apr 21, 2021 at 8:41 AM Dijk, Jan van <[email protected]> wrote: > Dear Antonio, Rob, > > Indeed, Xwindows.h (on my OpenSuSE system) has a #define Status int > > It seems reasonable to solve this the same as issue 253: let Eigen produce > an understandable #error if Status is already defined. See > https://gitlab.com/libeigen/eigen/-/issues/253 > > Regards, Jan. > > ________________________________________ > From: Antonio Sanchez <[email protected]> > Sent: Wednesday, April 21, 2021 5:13 PM > To: [email protected] > Subject: Re: [eigen] Problem with 3.4 rc1 > > My best guess is that somewhere there is a > > #define Status int > > somewhere in your code, which is then conflicting with the enum value > "Status = 3", which is being converted to "int = 3" by the preprocessor. > > You may need to undef it before including Eigen. > > On Tue, Apr 20, 2021 at 10:48 PM Rob McDonald <[email protected] > <mailto:[email protected]>> wrote: > I'm trying 3.4 rc1 on my program. Everything seems to work fine on > Windows and MacOS. However, there seems to be some sort of conflict when I > try to build on Linux. > > We are currently using 3.3.7 and everything works fine. I suppose I could > try 3.3.9 if that would be helpful. > > The problems only crop up in the graphics part of my program (which does > not use Eigen intensively, it just gets included relatively incidentally). > My program can also be compiled in a non-graphical version (no GUI, OpenGL, > or XWindows libraries allowed at all) - and that works fine. I use FLTK as > a cross-platform GUI library. The most significant difference on Linux is > the use of X Windows. > > I've attached the gcc error log from trying to compile one file -- sorry, > it is 884 lines long... > > My gut says something is getting #defined that then gives Eigen fits. > However, I can't find anything that looks wrong in the code the messages > are pointing to. > > Any help tracking this down will be very much appreciated. > > Rob > > > > > > >
