Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can the library be compiled on ARM? #18

Closed
mtisz opened this issue Feb 13, 2020 · 2 comments
Closed

Can the library be compiled on ARM? #18

mtisz opened this issue Feb 13, 2020 · 2 comments
Labels
documentation Improvements or additions to documentation enhancement New feature or request

Comments

@mtisz
Copy link

mtisz commented Feb 13, 2020

Hello,

Thanks for the awesome work! Can this library be compiled on ARM architectures? If so, could you please share a sample makefile?

Thanks!

@aous72
Copy link
Owner

aous72 commented Feb 13, 2020

Hi,

Good question.

Yes, the library can be compiled on ARM, but requires a change to the CMakeLists.txt. I am including a modified CMakeLists.txt.

Replace the CMakeLists.txt file in OpenJPH/, with this CMakeLists.txt.

Then,

    cd build
    cmake -DCMAKE_BUILD_TYPE=Release -DOJPH_DISABLE_INTEL_SIMD=ON ../
    make

This disables the use of Intel SIMD instruction, and the code can be compiled for ARM.

I want to test this new CMakeLists.txt file in Windows before pushing it to repository.

I do not have an ARM machine to test one. So, I tested the code using QEMU for aarch64 architecture assuming a Cortex-A57. Because the ARM platform is emulated, the whole process was slow, but the code is working as far as I can tell.

Perhaps you can let us know what platform you use, and advise me what tools to use testing.

Cheers,
Aous.

P.S.: cmake generates a Makefile for you. I hope this is not an issue.

@aous72 aous72 added documentation Improvements or additions to documentation enhancement New feature or request labels Feb 27, 2020
aous72 added a commit that referenced this issue Feb 27, 2020
Closes Issue #18: CMakeLists.txt allows disabling SIMD instruction for compilations targeting ARM and other platforms.
Closes Issue #21: Added some text in README.md to clarify the need to use an escape character before { and }.
Closes Issue #22: Added some text in README.md to clarify how the downsampling option -downsamp should be used for the case of 422 (Obviously more work on documentation is needed).
Closes Issue #23: It looks like some older versions of ffprobe is sensitive to the header of ppm, so I modified the header slightly to make it acceptable.  I think the new format should be supported by more applications.
@aous72
Copy link
Owner

aous72 commented Feb 27, 2020

CMakeLists.txt has been integrated into master branch.

@aous72 aous72 closed this as completed Feb 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants