-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Description
I got it to compile in alpine in an aarch64 machine, but not on an x86_64 machine. With some chatGPT help I managed to find the solution. I was getting the below error:
2025-07-01 11:57:59 ./seqan/file/file_page.h:76:22: error: expected '>' before numeric constant
2025-07-01 11:57:59 76 | template <size_t PAGESIZE>
2025-07-01 11:57:59 | ^~~~~~~~
2025-07-01 11:57:59 ./seqan/file/file_page.h:163:55: error: expected '>' before numeric constant
2025-07-01 11:57:59 163 | template <typename TValue, typename TFile, size_t PAGESIZE>
2025-07-01 11:57:59 | ^~~~~~~~
2025-07-01 11:57:59 ./seqan/file/file_page.h:184:55: error: expected '>' before numeric constant
2025-07-01 11:57:59 184 | template <typename TValue, typename TFile, size_t PAGESIZE>
2025-07-01 11:57:59 | ^~~~~~~~
2025-07-01 11:58:00 ./seqan/file/file_page.h:408:27: error: expected identifier before numeric constant
2025-07-01 11:58:00 408 | enum { PAGESIZE =
... very long
It has to do with the seqan file file/file_page.h, in particular:
#ifdef PAGESIZE
#undef PAGESIZE
#endif
template <size_t PAGESIZE>
I had to insert that undef block for it to work.
I arrived to this conclusion with chatGPT, which asked me to run echo '#include <sys/param.h>' | cpp -dM | grep PAGESIZE in both machines. The aarch64 machine returned nothing, the x86_64 returned:
#define PAGESIZE 4096
#define PAGE_SIZE PAGESIZE
That got it to compile, but I don't understand much what's going on. Can a fix be added to the library so that I don't have to add this on my side?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels