int icvGetCrossPieceVector(CvPoint2D32f p1_start, CvPoint2D32f p1_end, CvPoint2D32f v2_start, CvPoint2D32f v2_end, CvPoint2D32f *cross) {
    void *fptr;
    int retval;

    fptr = dlsym(_Chcv_handle, "icvGetCrossPieceVector_chdl");
    if(fptr == NULL) {
        fprintf(_stderr, "Error: %s(): dlsym(): %s\n", __func__,  dlerror());
        return -1;
    }
    dlrunfun(fptr, &retval, icvGetCrossPieceVector, p1_start, p1_end, v2_start, v2_end, cross);
    return retval;
}
