Changes between Version 9 and Version 10 of user-troubleshooting


Ignore:
Timestamp:
Feb 12, 2011 2:36:10 PM (9 years ago)
Author:
stefan
Comment:

it's COIN-OR, not just COIN

Legend:

Unmodified
Added
Removed
Modified
  • user-troubleshooting

    v9 v10  
    44
    55
    6 The next is a plea to be considerate:  The project managers for the packages provided on COIN try to make the usage of their code easy and will try to help in case you run into problems.  However, before contacting the project manager (via the project's mailing list or by submitting a trouble ticket), '''please make sure you carefully read and followed the instructions''' given on the project's home page and on these wiki pages for [http://projects.coin-or.org/BuildTools BuildTools].
     6The next is a plea to be considerate:  The project managers for the packages provided on COIN-OR try to make the usage of their code easy and will try to help in case you run into problems.  However, before contacting the project manager (via the project's mailing list or by submitting a trouble ticket), '''please make sure you carefully read and followed the instructions''' given on the project's home page and on these wiki pages for [http://projects.coin-or.org/BuildTools BuildTools].
    77
    88== Problems During Downloading ==
     
    1212If you want to use subversion from the command line (with the {{{svn}}} program), you need to '''make sure that you have a version of {{{svn}}} that is able to use the SSL layer''', i.e., that it is able to connect to {{{https://...}}} URLs.  You can find out if your version of {{{svn}}} supports this by typing {{{svn --version}}}.  If it says "{{{handles 'https' scheme}}}," you are fine.  Otherwise, you need to obtain a different version, or compile the {{{svn}}} executable yourself.  In that case, make sure you specify {{{--with-ssl}}} when you run {{{configure}}} for subversion.  For information on how to obtain subversion, click [wiki:user-download here]. ''Note: We are successfully using '''subversion version 1.3.1''' to download the code; older versions might not work properly.''
    1313
    14 For most of the COIN projects, we use the {{{externals}}} feature of subversion, which allows us to get the correct version for all dependencies for each project.  You might noticed that this slows the downloading down a bit; you just need to be patient ;)
     14For most of the COIN-OR projects, we use the {{{externals}}} feature of subversion, which allows us to get the correct version for all dependencies for each project.  You might noticed that this slows the downloading down a bit; you just need to be patient ;)
    1515
    1616== Problems During Configuration ==
     
    2020If you run {{{configure}}} and it doesn't complete with "{{{configuration of XXX successfull}}}", something went wrong.  There is no point in trying to do a {{{make}}} anyway, since the Makefiles will not have been created yet.  Make sure you read the [wiki:user-configure Preparing the compilation] information provided in these wiki pages.
    2121
    22 If you still run into trouble, the screen output or the output files {{{config.log}}} generated by {{{configure}}} might help.  It is important to know that for a COIN configuration usually several {{{configure}}} scripts are run recursively.  Therefore, '''you should try to find out which configuration script was the one that failed'''.  In the screen output, you find a line like "{{{configure: configuring in Clp}}}" just before a new configure script is started.  To see some more detailed output than what you see on the screen, you should then '''look at the config.log file in the subdirectory that corresponds to the configure script that failed''' (which is {{{Clp}}} for the example output).
     22If you still run into trouble, the screen output or the output files {{{config.log}}} generated by {{{configure}}} might help.  It is important to know that for a COIN-OR configuration usually several {{{configure}}} scripts are run recursively.  Therefore, '''you should try to find out which configuration script was the one that failed'''.  In the screen output, you find a line like "{{{configure: configuring in Clp}}}" just before a new configure script is started.  To see some more detailed output than what you see on the screen, you should then '''look at the config.log file in the subdirectory that corresponds to the configure script that failed''' (which is {{{Clp}}} for the example output).
    2323
    2424'''To locate the detailed error message in the config.log file''', open it with an editor, go to the end of the file, and search backwards for
     
    7070This shows you that the error occurred during test of the library {{{libcplex.a}}}.  The problem here is that the symbols "{{{pthread_create}}}" etc. cannot be resolved.  In this example it means that you also have to provide the pthread library ({{{-lpthread}}}) in your flags for linking with the Cplex library ({{{--with-cplex-lib}}}).  As you see, the output also contains the source code for the test program, as well as the detailed compiler command, so that you can try to tracy down the problem separate from the configuration script.
    7171
    72 In case you are not able to resolve the problem on your own and want to ask for help, you should '''submit a ticket''' at the Trac home page for the COIN project that doesn't configure properly.  To submit a ticket, you click on the "New Ticket" tab at the top of the project's page and fill out the information (after you registered and logged into the Trac system).  It might be a good idea to attach the {{{config.log}}} file that represents your failed configuration run. (Please don't copy any output or file content into the description box, since that will be unreadable.  Please use the "Add Attachment" button to attach a file).  You should '''provide your email address''' in the first box of the page that comes up, so that you will be notified of changes to the ticket, and so that someone might be able to contact you in case more information is required.
     72In case you are not able to resolve the problem on your own and want to ask for help, you should '''submit a ticket''' at the Trac home page for the COIN-OR project that doesn't configure properly.  To submit a ticket, you click on the "New Ticket" tab at the top of the project's page and fill out the information (after you registered and logged into the Trac system).  It might be a good idea to attach the {{{config.log}}} file that represents your failed configuration run. (Please don't copy any output or file content into the description box, since that will be unreadable.  Please use the "Add Attachment" button to attach a file).  You should '''provide your email address''' in the first box of the page that comes up, so that you will be notified of changes to the ticket, and so that someone might be able to contact you in case more information is required.
    7373
    7474=== Be aware of environment variables ===
    7575
    76 Note that the {{{configure}}} script also looks at certain environment variables to determine values.  For example, all the variables listed as [wiki:user-configure#VariableArgumentsforconfigure variable arguments for configure], such as compiler names and options, are picked up by the {{{configure}}} script.  Also, some COIN specific options, such as {{{---with-library-lib}}} can be replaced by environment variables; for example, {{{CPXINCDIR}}} might be defined in your environment from an earlier version of COIN, and it is understood now as the argument of {{{--with-cplex-lib}}}.
     76Note that the {{{configure}}} script also looks at certain environment variables to determine values.  For example, all the variables listed as [wiki:user-configure#VariableArgumentsforconfigure variable arguments for configure], such as compiler names and options, are picked up by the {{{configure}}} script.  Also, some COIN-OR specific options, such as {{{---with-library-lib}}} can be replaced by environment variables; for example, {{{CPXINCDIR}}} might be defined in your environment from an earlier version of COIN-OR, and it is understood now as the argument of {{{--with-cplex-lib}}}.
    7777
    7878== Problems During Compilation ==
     
    8080=== Output of make ===
    8181
    82 If you run {{{make}}} to compile the code, you will see a lot of output.  Since most COIN projects use the GNU autotools, the output might be somewhat complicated, but in principle you see every command that is executed.  If the compilation fails, it might be a good idea to have a '''careful look at the error message and at the source file that could not be compiled'''.  You might be able to resolve the problem by adapting the source code; in that case it would be nice if you could '''let the project manager know about your bug fix''' by submitting a ticket that includes the changes you made.  If you are not able to resolve the problem on your own and want to ask for help, you can '''submit a ticket''', and include the output of {{{make}}} and also the {{{config.log}}} file of the COIN sub-project where the failure occurs.  The {{{config.log}}} file includes information about your environment that might be helpful to track the problem.
     82If you run {{{make}}} to compile the code, you will see a lot of output.  Since many COIN-OR projects use the GNU autotools, the output might be somewhat complicated, but in principle you see every command that is executed.  If the compilation fails, it might be a good idea to have a '''careful look at the error message and at the source file that could not be compiled'''.  You might be able to resolve the problem by adapting the source code; in that case it would be nice if you could '''let the project manager know about your bug fix''' by submitting a ticket that includes the changes you made.  If you are not able to resolve the problem on your own and want to ask for help, you can '''submit a ticket''', and include the output of {{{make}}} and also the {{{config.log}}} file of the COIN-OR sub-project where the failure occurs.  The {{{config.log}}} file includes information about your environment that might be helpful to track the problem.