NOTE FROM SAM:
I made some progress on this. The config directory didn't exist, so I made the directory, your instructions implied that it should already be there in the git respository. The Settings.txt file was found fine.
configureModelSEED.sh worked, and successfully compiled with glpk.
There was a warning in the compilation, which I've pasted here for your reference:
../Source/MFAProblem.cpp: In member function ‘int MFAProblem::ModifyInputConstraints(ConstraintsToModify*, Data*)’:
../Source/MFAProblem.cpp:1828: warning: NULL used in arithmetic
../Source/MFAProblem.cpp:1832: warning: NULL used in arithmetic
I found out when I tried running CreateDBScheme.sh that I didn't have the perl module DBD::mysql installed, so you should put that in the list of perl modules, both DBI, and DBD::mysql. I think you should move the instructions for mysql in front of the instructions for configureModelSEED.sh, because one should create the user account in for the local modeldb database before setting it in the Settings.txt file.
If anyone has trouble getting DBD::mysql to work, remind them that they need the MySQL development headers/libraries as well as the standard installation.
Running CreateDBScheme.sh
worked after that, and created a ModelDB2 database in my mysql server. However, when I tried to load in the mysql dump:
seaver$ mysql -u ModelSEED -p ModelDB2 < ModelSEEDDB.sql Enter password:
ERROR 1064 (42000) at line 161: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'USING BTREE
) ENGINE=MyISAM AUTO_INCREMENT=86873 DEFAULT CHARSET=latin1' at line 33
Now, I realize that I'm going to upgrade my mysql server, which is version 5.0, in case there's a change in the SQL format that's relevant for the server version, but you should probably see if you can create a dump that works for most versions of MySQL, as others may not have this flexibility. This might not be the problem, but I'm not sure what else it could be.
On a related note, CreateDBScheme.sh
created ModelDB2, but the database dump creates and uses ModelDB, so the ModelDB2 database in fact doesn't get used, which kind of makes CreateDBScheme.sh
redundant.
FOLLOW UP NOTE FROM SAM:
OK, I found this bug report: http://bugs.mysql.com/bug.php?id=25162
It suggests running mysqldump with the --compatible option
:
--compatible=name Change the dump to be compatible with a given mode. By
default tables are dumped in a format optimized for
MySQL. Legal modes are: ansi, mysql323, mysql40,
postgresql, oracle, mssql, db2, maxdb, no_key_options,
no_table_options, no_field_options. One can use several
modes separated by commas. Note: Requires MySQL server
version 4.1.0 or higher. This option is ignored with
earlier server versions.
Can you try it as:
mysqldump --compatible=mysql40
and send me the new sql dump?
MORE FOLLOW UP FROM SAM:
Actually, I went through that sql dump, and deleted all 20 instances of "USING BTREE", and the dump worked fine after that.