Interface Calling Example
- Create a test.cpp file.
- Add the following code to the test.cpp file.
#include "hmpp.h" #define BUFFER_SIZE_T 500 void AddExample() { uint32_t *src1 = HMPPS_Malloc_32u(BUFFER_SIZE_T); uint32_t *src2 = HMPPS_Malloc_32u(BUFFER_SIZE_T); uint32_t *dst = HMPPS_Malloc_32u(BUFFER_SIZE_T); int32_t i, result; if (src1 == NULL || src2 == NULL || dst == NULL) { return; } for (i = 0; i < BUFFER_SIZE_T; ++i) { src1[i] = i; src2[i] = i + 1; } result = HMPPS_Add_32u(src1, src2, dst, BUFFER_SIZE_T); printf("result = %d \n dst = ", result); for (i = 0; i < BUFFER_SIZE_T; i++) { printf("%d ", dst[i]); } printf("\n"); HMPPS_Free(src1); HMPPS_Free(src2); HMPPS_Free(dst); }int main(void){ AddExample(); return 0; }
Example of Compiling and Executing a File
- Compile the file.
g++ test.cpp -o test -lHMPP_fft -lHMPP_fftf -lHMPP_signal -lHMPP_core -lHMPP_image
- Execute the file.
./test
Troubleshooting
Symptom:
- "fatal error: hmpp.h: No such file or directory"
- "./test: error while loading shared libraries: libHMPP_core.so.1.0.0: cannot open shared object file: No such file or directory"
Procedure:
- Check whether header files and dynamic libraries exist in /usr/local/include/HMPP and /usr/local/lib/HMPP.
- Add the following environment variables to /etc/profile:
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/include/HMPP export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/include/HMPP export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/HMPP export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/lib/HMPP
- Make the settings take effect.
source /etc/profile
Parent topic: Using the HMPP