error while building version 1.6.2

For developers writing C++, Fortran, Java, code who have questions or comments to make.

Moderators: silvia, selimgunay, Moderators

Post Reply
cenk tort
Posts: 21
Joined: Mon Aug 16, 2004 11:30 am
Location: miteng
Contact:

error while building version 1.6.2

Post by cenk tort »

Hello,

I tried compiling version 1.6.2 in visual c++ and got the following error messages in the file superlu.h

\opensees1.6.2\opensees\src\system_of_eqn\linearsoe\sparsegen\superlu.h(78) : error C2146: syntax error : missing ';' before identifier 'options'
opensees1.6.2\opensees\src\system_of_eqn\linearsoe\sparsegen\superlu.h(78) : error C2501: 'superlu_options_t' : missing storage-class or type specifiers
opensees1.6.2\opensees\src\system_of_eqn\linearsoe\sparsegen\superlu.h(78) : error C2501: 'options' : missing storage-class or type specifiers
opensees1.6.2\opensees\src\system_of_eqn\linearsoe\sparsegen\superlu.h(79) : error C2146: syntax error : missing ';' before identifier 'stat'
opensees1.6.2\opensees\src\system_of_eqn\linearsoe\sparsegen\superlu.h(79) : error C2501: 'SuperLUStat_t' : missing storage-class or type specifiers
opensees1.6.2\opensees\src\system_of_eqn\linearsoe\sparsegen\superlu.h(79) : error C2208: 'struct stat' : no members

Any help is appreciated,
Thanks.
Cenk
Cenk Tort
Department of Civil Engineering
University of Minnesota
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

are you using vc6.0?? .. i have only acces to the .net now and so am not sure
if the projects get updated for the old vc6.0 .. anyway we have changed to a newer version
of SuperLU .. you have to change the project setting to point to OTHER/SUperLU_3.0/SRC
instead of /OTHER/SuperLU .. and then you have to delete all the files in the superlu project
(as these point to the old files in SuperLU directory) and then add the files in SUperLU_3.0/SRC
Rodgers
Posts: 31
Joined: Wed Sep 15, 2004 4:44 pm
Location: University of California, Davis

Post by Rodgers »

Then what's up with all those redifinitions of 'i' as in

for(int i=...)

The .NET actually allow that now?
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

yes it does.
Rodgers
Posts: 31
Joined: Wed Sep 15, 2004 4:44 pm
Location: University of California, Davis

Post by Rodgers »

I just finished compiling the CVS version on VC6.0.

It not only has those problems mentioned above, but also have some missing files. For example, somebody forgot to drag Recorder.cpp into the project. I don't understand how this would not be a problem in .NET.

My guess is that the the CVS version is just a taunting version, it never works out of the box.

Also, I think the including directory is a bit out of control. You have so many projects and the files are cross including. It is just a mess to have to put so many including paths in the project setting.

Why don't we put all the header files in a single directory? or, if someone want to put it in some subdirectory, put it in the #include line, e.g.:

#include <src/actor/actor/blablabla.h>
It is not what you can do, it is what you can dream!
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

the cvs does work .. it's just that the vc.net and vc6.0 projects are totally different ..
suggest you all start migrating to vc.net anyway .. vc6.0 is a lousy compiler (most annoying part was that it would not accept code that was perfectly valid .. the redefinitions of i is one such example) .. no i am not going to put all the header files in a single directory .. the include directories could be shorter for most of the projects, however we just created the original by creating one with all and cutting & pasting to the rest .. using the actual path to the file is not a good idea either as we are planning a major change to the way the code is released that could change a lot of the file locations.
Rodgers
Posts: 31
Joined: Wed Sep 15, 2004 4:44 pm
Location: University of California, Davis

Post by Rodgers »

I didn't understand the problem of putting all the header files in one folder. Specifically, what are you referring to by this:

...however we just created the original by creating one with all and cutting & pasting to the rest ...

Since all the other software packages I saw put them in one place, there must be some reason why you chosed to spread them out. Can you elaborate on that a little bit? Thanks!
It is not what you can do, it is what you can dream!
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

i have updated the windows projects for vc6.0 .. errors will pop up when compiling about
redeifinition of variables .. these files i will not be updating as the files are valid c++ .. the vc6.0 compiler just can't handle them .. the fix is to replace lines like the following:

for (int i =0; i<...) {

}

for (int i=.....) {

}

with lines like the following.
int i;
for (i=...) {

}
for (i=...){
}

as i said i will not be making these changes to the code anymore as coding in this can lead to bugs in the software which are really hard to track down.
Post Reply