Gcc 混合内存对齐和未对齐代码

Gcc 混合内存对齐和未对齐代码,gcc,memory-alignment,blas,compiler-flags,Gcc,Memory Alignment,Blas,Compiler Flags,我最近编译了GotoBLAS2 MacOSX 10.6并将其与我的代码链接,导致了各种错误的结果。我在valgrind上查了所有的东西,注意到一些来自GotoBLAS的非法阅读。仔细查看后,我发现GotoBLAS是使用-m128位长的双对齐选项编译的。尽管我根本不使用任何长双精度,但只要我使用这个标志编译代码,一切都可以正常工作,在没有任何valgrind模糊的情况下给出正确的结果 现在我的问题是: 我是否必须使用相同的对齐标志编译所有其他库依赖项?

我最近编译了GotoBLAS2 MacOSX 10.6并将其与我的代码链接,导致了各种错误的结果。我在valgrind上查了所有的东西,注意到一些来自GotoBLAS的非法阅读。仔细查看后,我发现GotoBLAS是使用-m128位长的双对齐选项编译的。尽管我根本不使用任何长双精度,但只要我使用这个标志编译代码,一切都可以正常工作,在没有任何valgrind模糊的情况下给出正确的结果

现在我的问题是:

我是否必须使用相同的对齐标志编译所有其他库依赖项?