Hi Manuel, On 2011-11-23 14:28, Raymond Wan wrote:
Apparently, you are using your own build/project files, i.e. not generated with the SeqAn build system. Note that you have to add both "core/include" and "extras/include" to the include path.Ah, yes. I'm adding SeqAn to my CMakeLists.txt rather than adding my project to SeqAn's CMakeLists.txt. I figured if I start off with an empty file, then I have an idea of what goes inside it. SeqAn's looks great but there are a lot of cmake directives I don't quite understand.
I'm starting to have doubts about what I'm doing is a good idea... Perhaps you can tell me what I'm doing wrong?
If I'm not mistaken, SeqAn is a header-only library (like most of Boost). And compiling is only needed if you want to look at the tutorials? The 1.3 Release instructions says that I just have to move the include/ directory to the right place.
So, I created the subdirectories: ~/common/include/seqan-core ~/common/include/seqan-extras Inside seqan-core, I have a symlink: seqan -> ../seqan/core/include/seqan Likewise for seqan-extras. In CMakeLists.txt, I did this: INCLUDE_DIRECTORIES (~/common/include/seqan-core) INCLUDE_DIRECTORIES (~/common/include/seqan-extras) ...I think this should work? In my source, I did: #include <seqan/basic.h> #include <seqan/file/stream.h> When I compile, I get this error:In file included from /home/rwan/common/include/seqan-core/seqan/platform.h:43, from /home/rwan/common/include/seqan-core/seqan/basic.h:39,
.../home/rwan/common/include/seqan-core/seqan/platform/platform_gcc.h:82:56: error: seqan/platform/platform_generated_forwards.h: No such file or directory /home/rwan/common/include/seqan-core/seqan/platform/platform_gcc.h:85:2: error: #error To use the SeqAn library you first have to execute 'make forwards' in the root directory
...So, it found basic.h, platform.h, ... fine, but not platform_generated_forwards.h . The error says I need to do a 'make forwards' but:
1) I don't know what is the root directory; or, at least one with an obvious makefile.
2) I could perform an out-of-source build and create a build/ directory and do "cmake | make" but that didn't copy the header files over -- moving the symlinks to this build/ directory doesn't seem to work.
I think I'm close :-) but I'm still stuck. My only remaining idea is to do an in-source build -- such that the stuff that is created with "make" is in the same place where the .h files are. Is that what I need to do?
Thank you and if I'm confusing myself and should just follow the instructions and work from SeqAn's CMakeLists.txt, please tell me. :-)
Ray PS: This is the SVN release. I'm not using 1.3 anymore. ;-)