aklomp / base64

Fast Base64 stream encoder/decoder in C99, with SIMD acceleration
BSD 2-Clause "Simplified" License
868 stars 162 forks source link

Window x64 platform base_encode outlen is ZERO #40

Open tomcatter opened 7 years ago

tomcatter commented 7 years ago

I compiled the library on Windows x64 platform, I specified the sse3 instruction set, then I used it for encode to base64, but the length of the base64 string is zero. I tried the x86, it is working well.

aklomp commented 7 years ago

An output length of zero is a strong indication that the codec is not properly compiled in. Are you using the BASE64_FORCE_SSSE3 flag to force the codec? Because this will only work if the codec is compiled in. By default it's not.

Could you compile and run the test suite and print the output?

tomcatter commented 7 years ago

Yes, I use this version of base64-0.3.0 release. In the config.h set the HAVE_SSSE3 to 1.

aklomp commented 7 years ago

Hey, could you please re-test with the latest master branch? The merge of issue #42 may have fixed the bug.

aklomp commented 8 months ago

As of v0.5.2, this library is now built and tested in CI on Windows, by building it with a variety of MSVC and MSYS2/MinGW setups. A number of bugs were also fixed in regard to platform detection and Windows compatibility. Does the bug still happen with the latest release?

I am tempted to close this issue because there is now comprehensive CI coverage for Windows.