Skip to content

Fails to compile on IBM Power architecture (ppc64le) #47

Description

@jblachly

While trying to compile https://github.com/COMBINE-lab/salmon on an IBM Power system, compilation fails during the pufferfish build phase because of SSE flags passed to the compiler for constituent ksw2pp:

236.4 Scanning dependencies of target ksw2pp_sse4
236.4 [ 40%] Building C object external/pufferfish/src/CMakeFiles/ksw2pp_sse4.dir/ksw2pp/ksw2_extd2_sse.c.o
236.4 cc: error: unrecognized command line option '-msse'
236.4 cc: error: unrecognized command line option '-msse2'
236.4 cc: error: unrecognized command line option '-msse3'
236.4 cc: error: unrecognized command line option '-mssse3'
236.4 cc: error: unrecognized command line option '-msse4'
236.4 cc: error: unrecognized command line option '-msse4.1'
236.4 make[2]: *** [external/pufferfish/src/CMakeFiles/ksw2pp_sse4.dir/build.make:63: external/pufferfish/src/CMakeFiles/ksw2pp_sse4.dir/ksw2pp/ksw2_extd2_sse.c.o] Error 1
236.4 make[1]: *** [CMakeFiles/Makefile2:484: external/pufferfish/src/CMakeFiles/ksw2pp_sse4.dir/all] Error 2
236.4 make: *** [Makefile:163: all] Error 2

Obviously, -msse flags are not meaningful on non-AMD architectures (I don't have an ARM platform handy to test whether gcc pukes on this arch as well but presumably it does). I'm not sure whether -march=native is important here or not.

I see that Pufferish can be built for both amd64 and arm64 architectures, so presumably there should be a way around this, but I am not seeing it. Please let me know if you have ideas and if successful, I"ll try to submit a PR to broaden support if I can get it working. Normally I would troubleshoot this myself, but the use heavy use of intrinsics in this library has me stumped.

Kind regards

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions