GitHub issue: cannot build source
State: closed

Hi,

I try to build source at frvt/11"
mkdir build
cd build
cmake ..
make

This is error:
Scanning dependencies of target validate11
[ 33%] Building CXX object src/testdriver/CMakeFiles/validate11.dir/home/Code/NIST/frvt/common/src/util/util.cpp.o
[ 66%] Building CXX object src/testdriver/CMakeFiles/validate11.dir/validate11.cpp.o
[100%] Linking CXX executable ../../../bin/validate11
CMakeFiles/validate11.dir/validate11.cpp.o: In function `main':
validate11.cpp:(.text.startup+0x14): undefined reference to `FRVT::FRVT_STRUCTS_MAJOR_VERSION'
validate11.cpp:(.text.startup+0x38): undefined reference to `FRVT::FRVT_STRUCTS_MINOR_VERSION'
validate11.cpp:(.text.startup+0x46): undefined reference to `FRVT_11::API_MAJOR_VERSION'
validate11.cpp:(.text.startup+0x57): undefined reference to `FRVT_11::API_MINOR_VERSION'
validate11.cpp:(.text.startup+0x2bb): undefined reference to `FRVT::FRVT_STRUCTS_MINOR_VERSION'
validate11.cpp:(.text.startup+0x393): undefined reference to `FRVT_11::API_MINOR_VERSION'
validate11.cpp:(.text.startup+0x512): undefined reference to `FRVT_11::Interface::getImplementation()'
collect2: error: ld returned 1 exit status
src/testdriver/CMakeFiles/validate11.dir/build.make:120: recipe for target '../bin/validate11' failed
make[2]: *** [../bin/validate11] Error 1
CMakeFiles/Makefile2:85: recipe for target 'src/testdriver/CMakeFiles/validate11.dir/all' failed
make[1]: *** [src/testdriver/CMakeFiles/validate11.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

Please help me
Thanks

Please follow the instructions documented in the README.txt file.  You should run ./run_validate_11.sh, and that will link your library against the validation test driver.  Please also ensure you clone the entire master frvt repo, because all validation packages will have dependencies on the global common folder.

@mlngan thanks for your help

In document: config/ -contains all configuration and developer-defined data, e.g., trained models
I follow readme and get this error when I run ./run_validate_11.sh:
Detection of hard-coded config directory in your software.  Please fix!

What is config ?

Thanks

The config directory is a folder that should contain any data you need to initialize your algorithm with during a call to initialize().  Our test driver will make a call to initialize() prior to any calls to createTemplate() or match().  The actual path of the config directory is passed to you as an input parameter to initialize().  The error you're encountering means you potentially have "./config" hard-coded somewhere in your software.  Instead, you should be reading your configuration data from the path that's passed into initialize().

@mlngan thank for your answer
I do not hard-coded config in source code, I create config folder then run ./run_validate_11.sh and get error:
Checking for hard-coded config directory scripts/run_testdriver.sh: line 70: 14217 Segmentation fault      (core dumped) bin/validate11 createTemplate -x enroll -c $tempConfigDir -o $outputDir -h $outputStem -i $inputFile -t $numForks -j $templatesDir
[ERROR] Detection of hard-coded config directory in your software.  Please fix!

Thanks

@kimchicanh - in 11/scripts/run_testdriver.sh, please comment out lines 62, 65-81 and re-run ./run_validate_11.sh and see if you still get the seg fault.