#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2017
    Posts
    1
    Rep Power
    0

    Getting error: undefined reference to function Android NDK


    I have been trying to solve this issue for more than two days, but still no luck.

    I have no idea what is wrong, I need just to set up a simple NDK project, but it has already taken a tremendous amount of time.

    The problem is that I am getting

    Code:
    error: undefined reference to 'firpm(unsigned int, std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, double, int)'
    Here is my root CMakeLists

    Code:
    # Cmake Minimum Version
    cmake_minimum_required(VERSION 3.4.1)
    project(EcgProcessing)
    # Add nested cmake files
    include(libs/CMakeLists.txt)
    
    include_directories(${CMAKE_CURRENT_SOURCE_DIR})
    
    # ECG Audio Processor library
    add_library(ecg-signal-processor-demodulator SHARED
                demodulator.cpp)
    add_library(ecg-signal-processor-qrsdetection SHARED
                qrsdetection.cpp)
    # Link
    
    target_link_libraries(
                firpm_d
                log
                android
                ecg-signal-processor-demodulator
                ecg-signal-processor-qrsdetection)
    And in the libs directory

    Code:
    # Cmake Minimum Version
    cmake_minimum_required(VERSION 3.4.1)
    set(LIBS_DIRECTORY ${CMAKE_CURRENT_LIST_DIR})
    #include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Eigen/)
    MACRO(ADD_SUBLIB libname source_ext)
      #Compute required sources
      set(sublib_path "${LIBS_DIRECTORY}/${libname}")
      file(GLOB_RECURSE sublib_sources "${sublib_path}/src/*.${source_ext}")
      #Create library
      IF( sublib_sources )
        ADD_LIBRARY(${libname} SHARED ${sublib_sources})
      ENDIF()
      #add this library's header folder to the global include set
      INCLUDE_DIRECTORIES("${sublib_path}/include")
      INCLUDE_DIRECTORIES("${sublib_path}/")
      link_directories(${sublib_path})
    ENDMACRO(ADD_SUBLIB)
    
    ADD_SUBLIB(firpm_d "cpp")
    ADD_SUBLIB(eigen "cpp")
    It starts to compile the project, however ends up with the error.

    What can cause this error, I have no idea what to try else.

    Here is source code, so you can see it all structured. https://github.com/DurianOdour/EcgProcessor

    I would be grateful for any help
  2. #2
  3. Contributing User
    Devshed God 1st Plane (5500 - 5999 posts)

    Join Date
    Aug 2011
    Posts
    5,903
    Rep Power
    509
    Maybe you need to supply the firpm function to implement your filter.
    [code]Code tags[/code] are essential for python code and Makefiles!

IMN logo majestic logo threadwatch logo seochat tools logo