Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I need to use a library that is called Concorde to solve a well known problem called Traveling Salesman Problem. This library is available here

I've downloaded and compiled it resulting in two main files concorde.a and concorde.h. I'm using Code::Blocks as IDE and I've added the the library file to be used while compiling my application and included the header in my code.

However when I try to compile my code, it can't find the implementation of the functions defined in the concorde.h file and I get the error "undefined reference to <function>". Can anyone help me with that?

Running only configure without parameters doesn't work in this case, because I need to specify which Exact solver Concorde will use. In this case IBM Cplex through the option --with-cplex=DIR. If I use this option both configure and make work, but make install no and gives me the following error make:

*** No rule to make target install'. Stop.
share|improve this question

closed as off-topic by dobey, user68186, Braiam, Avinash Raj, Jorge Castro Dec 13 '13 at 15:40

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This is not about Ubuntu. Questions about other Linux distributions can be asked on Unix & Linux, those about Windows on Super User, those about Apple products on Ask Different and generic programming questions on Stack Overflow." – dobey, user68186, Braiam, Avinash Raj, Jorge Castro
If this question can be reworded to fit the rules in the help center, please edit the question.

    
When you say you have added the library file. Do you mean you have gone to the build options for the project and added the correct search directory or just that you have included the header your code file? –  Julian Stirling Dec 12 '13 at 20:54
    
@Braiam Just run configure doesn't work in this case, because you need to specify which Exact solver Concorde will use. In this case IBM Cplex through the option --with-cplex=DIR. If I use this option both configure and make work, but make install no and gives me the following error make: *** No rule to make target install'. Stop.` –  Trino00 Dec 12 '13 at 21:02
    
@JulianStirling I mean that I have added the library directly in link libraries. I also tried later to modify the name of concorde.a to libconcorde.a, add the search directory and then link concordein the link settings –  Trino00 Dec 12 '13 at 21:06
    
@Braiam sorry. I forgot to mention that, my bad –  Trino00 Dec 12 '13 at 21:09
    
@Braiam Cplex is a commercial software from IBM, although it is possible to downloaded for research purposes. However I think the problem is not anything related to it. I tried to build without this option just to see what I would get since you said you were able to build just fine. Here when I run make install I get the *** No rule to make target install'. Stop. error. Do you have any idea of why I'm getting this? Could be because of some missing dependence? –  Trino00 Dec 12 '13 at 21:43

Browse other questions tagged or ask your own question.