2016-01-22 2 views
1

Я хочу скомпилировать приложение с GNSDK (Gracenote SDK) в linux, но у меня есть ошибки (я использую Code :: Blocks). Я не буду использовать отпечаток gracenote с функцией musicid_file_trackid.Gracenote GNSDK compile on linux

Моя компиляция с Visual Studio на Windows работает нормально, но не на Linux (Code :: Blocks with GNU GCC Compiler).

У меня есть эти вопросы:

||=== Build: Release in Gracenote (compiler: GNU GCC Compiler) ===| 
gcsl_fingerprint.c|| référence indéfinie vers « ippStaticInit »| 
gn_patchfp.c|| référence indéfinie vers « ippStaticInit »| 
CMFingerprinter.c|| référence indéfinie vers « ippsFree »| 
CMFingerprinter.c|| référence indéfinie vers « ippsMalloc_32f »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwdFree_32f »| 
CMFrameManager.c|| référence indéfinie vers « ippsFree »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwdInitAlloc_32f »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwdInitAlloc_32f »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwdGetBufSize_32f »| 
CMFrameManager.c|| référence indéfinie vers « ippsMalloc_8u »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwdGetBufSize_32f »| 
CMFrameManager.c|| référence indéfinie vers « ippsMalloc_8u »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwd_32f_I »| 
CMFrameManager.c|| référence indéfinie vers « ippsDCTFwd_32f_I »| 
CMHistogramEqualizer.c|| référence indéfinie vers « ippsMinMax_32f »| 
CMHistogramEqualizer.c|| référence indéfinie vers « ippsMinMax_32f »| 
CMHistogramEqualizer.c|| référence indéfinie vers « ippsSubC_32f_I »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsMalloc_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsMalloc_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFFTInitAlloc_R_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFFTFree_R_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFree »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFree »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFFTGetBufSize_R_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsMalloc_8u »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsAbs_32s_I »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFree »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFFTFree_R_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFree »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFree »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFree »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsMaxAbs_32s »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsLShiftC_32s_I »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsRShiftC_32s_I »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsMul_32s_ISfs »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsFFTFwd_RToPerm_32s_Sfs »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsMagSquared_32sc32s_Sfs »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsDotProd_16s32s32s_Sfs »| 
FixedFAPIFingerprinter.c|| référence indéfinie vers « ippsDotProd_16s32s32s_Sfs »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsFree »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsMalloc_32f »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsDotProd_32f »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsDotProd_32f »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsDotProd_32f »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsDotProd_32f »| 
GNDSP_Resampler.c|| référence indéfinie vers « ippsDotProd_32f »| 
lib_static/libgnsdk_dsp.a(GNDSP_Resampler.o):GNDSP_Resampler.c|| encore plus de références indéfinies suivent vers « ippsDotProd_32f »| 
gcsl_memory_markers.c|| référence indéfinie vers « pthread_key_create »| 
gcsl_memory_markers.c|| référence indéfinie vers « pthread_key_delete »| 
gcsl_memory_markers.c|| référence indéfinie vers « pthread_getspecific »| 
||More errors follow but not being shown.| 
||Edit the max errors limit in compiler options...| 
||=== Build failed: 50 error(s), 0 warning(s) (0 minute(s), 3 second(s)) ===| 

Linker commaandline: 

    g++ -Llib -Llib_static -o bin/Release/Gracenote obj/Release/main.o -s -pthread lib_static/libgnsdk_dsp.a lib_static/libgnsdk_link.a lib_static/libgnsdk_lookup_local.a lib_static/libgnsdk_lookup_localstream.a lib_static/libgnsdk_manager.a lib_static/libgnsdk_moodgrid.a lib_static/libgnsdk_musicid.a lib_static/libgnsdk_musicid_file.a lib_static/libgnsdk_musicid_stream.a lib_static/libgnsdk_playlist.a lib_static/libgnsdk_storage_sqlite.a lib_static/libgnsdk_video.a 


-------------- Build: Release in Gracenote (compiler: GNU GCC Compiler)--------------- 

g++ -Llib -Llib_static -o bin/Release/Gracenote obj/Release/main.o -s -pthread lib_static/libgnsdk_dsp.a lib_static/libgnsdk_link.a lib_static/libgnsdk_lookup_local.a lib_static/libgnsdk_lookup_localstream.a lib_static/libgnsdk_manager.a lib_static/libgnsdk_moodgrid.a lib_static/libgnsdk_musicid.a lib_static/libgnsdk_musicid_file.a lib_static/libgnsdk_musicid_stream.a lib_static/libgnsdk_playlist.a lib_static/libgnsdk_storage_sqlite.a lib_static/libgnsdk_video.a 
lib_static/libgnsdk_dsp.a(gcsl_fingerprint.o): dans la fonction « _fingerprint_init_func »: 
gcsl_fingerprint.c:(.text+0xa1): référence indéfinie vers « ippStaticInit » 
lib_static/libgnsdk_dsp.a(gn_patchfp.o): dans la fonction « patchfp_initialize »: 
gn_patchfp.c:(.text+0x5): référence indéfinie vers « ippStaticInit » 
lib_static/libgnsdk_dsp.a(CMFingerprinter.o): dans la fonction « CMFP_Destroy »: 
CMFingerprinter.c:(.text+0xc2): référence indéfinie vers « ippsFree » 
lib_static/libgnsdk_dsp.a(CMFingerprinter.o): dans la fonction « CMFP_Create »: 
CMFingerprinter.c:(.text+0x285): référence indéfinie vers « ippsMalloc_32f » 
lib_static/libgnsdk_dsp.a(CMFrameManager.o): dans la fonction « CMFM_Destroy »: 
CMFrameManager.c:(.text+0x211): référence indéfinie vers « ippsDCTFwdFree_32f » 
CMFrameManager.c:(.text+0x231): référence indéfinie vers « ippsFree » 
lib_static/libgnsdk_dsp.a(CMFrameManager.o): dans la fonction « CMFM_Create »: 
CMFrameManager.c:(.text+0x34d): référence indéfinie vers « ippsDCTFwdInitAlloc_32f » 
CMFrameManager.c:(.text+0x461): référence indéfinie vers « ippsDCTFwdInitAlloc_32f » 
CMFrameManager.c:(.text+0x4af): référence indéfinie vers « ippsDCTFwdGetBufSize_32f » 
CMFrameManager.c:(.text+0x4bf): référence indéfinie vers « ippsMalloc_8u » 
CMFrameManager.c:(.text+0x4d9): référence indéfinie vers « ippsDCTFwdGetBufSize_32f » 
CMFrameManager.c:(.text+0x4e5): référence indéfinie vers « ippsMalloc_8u » 
lib_static/libgnsdk_dsp.a(CMFrameManager.o): dans la fonction « CMFM_AppendDualPCMData »: 
CMFrameManager.c:(.text+0xe38): référence indéfinie vers « ippsDCTFwd_32f_I » 
CMFrameManager.c:(.text+0xf53): référence indéfinie vers « ippsDCTFwd_32f_I » 
lib_static/libgnsdk_dsp.a(CMHistogramEqualizer.o): dans la fonction « hist_eq_dual »: 
CMHistogramEqualizer.c:(.text+0x152): référence indéfinie vers « ippsMinMax_32f » 
CMHistogramEqualizer.c:(.text+0x169): référence indéfinie vers « ippsMinMax_32f » 
CMHistogramEqualizer.c:(.text+0x2b4): référence indéfinie vers « ippsSubC_32f_I » 
lib_static/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « FixedFAPIFingerprinterCreate »: 
FixedFAPIFingerprinter.c:(.text+0x2fb): référence indéfinie vers « ippsMalloc_32s » 
FixedFAPIFingerprinter.c:(.text+0x30f): référence indéfinie vers « ippsMalloc_32s » 
FixedFAPIFingerprinter.c:(.text+0x34e): référence indéfinie vers « ippsFFTInitAlloc_R_32s » 
FixedFAPIFingerprinter.c:(.text+0x3af): référence indéfinie vers « ippsFFTFree_R_32s » 
FixedFAPIFingerprinter.c:(.text+0x3d6): référence indéfinie vers « ippsFree » 
FixedFAPIFingerprinter.c:(.text+0x3e2): référence indéfinie vers « ippsFree » 
FixedFAPIFingerprinter.c:(.text+0x4a7): référence indéfinie vers « ippsFFTGetBufSize_R_32s » 
FixedFAPIFingerprinter.c:(.text+0x4ba): référence indéfinie vers « ippsMalloc_8u » 
FixedFAPIFingerprinter.c:(.text+0x59e): référence indéfinie vers « ippsAbs_32s_I » 
FixedFAPIFingerprinter.c:(.text+0x5a8): référence indéfinie vers « ippsFree » 
lib_static/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « FixedFAPIFingerprinterDelete »: 
FixedFAPIFingerprinter.c:(.text+0x67c): référence indéfinie vers « ippsFFTFree_R_32s » 
FixedFAPIFingerprinter.c:(.text+0x697): référence indéfinie vers « ippsFree » 
FixedFAPIFingerprinter.c:(.text+0x6a4): référence indéfinie vers « ippsFree » 
FixedFAPIFingerprinter.c:(.text+0x6d1): référence indéfinie vers « ippsFree » 
lib_static/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « ScaleToMaxQ »: 
FixedFAPIFingerprinter.c:(.text+0x96d): référence indéfinie vers « ippsMaxAbs_32s » 
FixedFAPIFingerprinter.c:(.text+0x9e0): référence indéfinie vers « ippsLShiftC_32s_I » 
FixedFAPIFingerprinter.c:(.text+0x9fc): référence indéfinie vers « ippsRShiftC_32s_I » 
lib_static/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « ExtractSoftSubFingerprint »: 
FixedFAPIFingerprinter.c:(.text+0xad9): référence indéfinie vers « ippsMul_32s_ISfs » 
FixedFAPIFingerprinter.c:(.text+0xb18): référence indéfinie vers « ippsFFTFwd_RToPerm_32s_Sfs » 
FixedFAPIFingerprinter.c:(.text+0xb6b): référence indéfinie vers « ippsMagSquared_32sc32s_Sfs » 
lib_static/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « ApplyLowPassFilter »: 
FixedFAPIFingerprinter.c:(.text+0x161c): référence indéfinie vers « ippsDotProd_16s32s32s_Sfs » 
lib_static/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « ApplyLowPassHQ »: 
FixedFAPIFingerprinter.c:(.text+0x166c): référence indéfinie vers « ippsDotProd_16s32s32s_Sfs » 
lib_static/libgnsdk_dsp.a(GNDSP_Resampler.o): dans la fonction « GNDSP_DestroyResampler »: 
GNDSP_Resampler.c:(.text+0x41): référence indéfinie vers « ippsFree » 
lib_static/libgnsdk_dsp.a(GNDSP_Resampler.o): dans la fonction « GNDSP_CreateResampler »: 
GNDSP_Resampler.c:(.text+0x539): référence indéfinie vers « ippsMalloc_32f » 
lib_static/libgnsdk_dsp.a(GNDSP_Resampler.o): dans la fonction « GNDSP_Resample »: 
GNDSP_Resampler.c:(.text+0xa39): référence indéfinie vers « ippsDotProd_32f » 
GNDSP_Resampler.c:(.text+0xa51): référence indéfinie vers « ippsDotProd_32f » 
GNDSP_Resampler.c:(.text+0xa69): référence indéfinie vers « ippsDotProd_32f » 
GNDSP_Resampler.c:(.text+0xa85): référence indéfinie vers « ippsDotProd_32f » 
GNDSP_Resampler.c:(.text+0xacf): référence indéfinie vers « ippsDotProd_32f » 
lib_static/libgnsdk_dsp.a(GNDSP_Resampler.o):GNDSP_Resampler.c:(.text+0xb31): encore plus de références indéfinies suivent vers « ippsDotProd_32f » 
lib_static/libgnsdk_manager.a(gcsl_process.o): dans la fonction « gcsl_process_library_sym »: 
gcsl_process.c:(.text+0x49): référence indéfinie vers « dlsym » 
lib_static/libgnsdk_manager.a(gcsl_process.o): dans la fonction « gcsl_process_library_load »: 
gcsl_process.c:(.text+0x262): référence indéfinie vers « dlopen » 
gcsl_process.c:(.text+0x366): référence indéfinie vers « dlclose » 
Process terminated with status 1 (0 minute(s), 1 second(s)) 
50 error(s), 0 warning(s) (0 minute(s), 1 second(s)) 

Как эта проблема решена?

Заранее спасибо.

Винсент LEVEQUE

Edit: Я попробовал ваш recommandation, но с этим компоновщика варианты:

-lgnsdk_dsp 
-lgnsdk_link 
-lgnsdk_lookup_local 
-lgnsdk_lookup_localstream 
-lgnsdk_manager 
-lgnsdk_moodgrid 
-lgnsdk_musicid 
-lgnsdk_musicid_file 
-lgnsdk_musicid_stream 
-lgnsdk_playlist 
-lgnsdk_storage_sqlite 
-lgnsdk_video 
-lippcore 
-lippcc 
-lippch 
-lippcv 
-lippdc 
-lippi 
-lipps 
-lippvm 
-pthread 

Но я всегда ошибки:

-------------- Clean: Release in Gracenote (compiler: GNU GCC Compiler)--------------- 

Cleaned "Gracenote - Release" 

-------------- Build: Release in Gracenote (compiler: GNU GCC Compiler)--------------- 

gcc -Wall -O2 -c /home/membre/codeblocks/Gracenote/main.c -o obj/Release/main.o 
g++ -Llib/linux_x86-64 -Llib_static/linux_x86-64 -Lipps -o bin/Release/Gracenote obj/Release/main.o -s -lgnsdk_dsp -lgnsdk_link -lgnsdk_lookup_local -lgnsdk_lookup_localstream -lgnsdk_manager -lgnsdk_moodgrid -lgnsdk_musicid -lgnsdk_musicid_file -lgnsdk_musicid_stream -lgnsdk_playlist -lgnsdk_storage_sqlite -lgnsdk_video -lippcore -lippcc -lippch -lippcv -lippdc -lippi -lipps -lippvm -pthread 
lib_static/linux_x86-64/libgnsdk_dsp.a(gcsl_fingerprint.o): dans la fonction « _fingerprint_init_func »: 
gcsl_fingerprint.c:(.text+0xa1): référence indéfinie vers « ippStaticInit » 
lib_static/linux_x86-64/libgnsdk_dsp.a(gn_patchfp.o): dans la fonction « patchfp_initialize »: 
gn_patchfp.c:(.text+0x5): référence indéfinie vers « ippStaticInit » 
lib_static/linux_x86-64/libgnsdk_dsp.a(CMFrameManager.o): dans la fonction « CMFM_Destroy »: 
CMFrameManager.c:(.text+0x211): référence indéfinie vers « ippsDCTFwdFree_32f » 
lib_static/linux_x86-64/libgnsdk_dsp.a(CMFrameManager.o): dans la fonction « CMFM_Create »: 
CMFrameManager.c:(.text+0x34d): référence indéfinie vers « ippsDCTFwdInitAlloc_32f » 
CMFrameManager.c:(.text+0x461): référence indéfinie vers « ippsDCTFwdInitAlloc_32f » 
CMFrameManager.c:(.text+0x4af): référence indéfinie vers « ippsDCTFwdGetBufSize_32f » 
CMFrameManager.c:(.text+0x4d9): référence indéfinie vers « ippsDCTFwdGetBufSize_32f » 
lib_static/linux_x86-64/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « FixedFAPIFingerprinterCreate »: 
FixedFAPIFingerprinter.c:(.text+0x34e): référence indéfinie vers « ippsFFTInitAlloc_R_32s » 
FixedFAPIFingerprinter.c:(.text+0x3af): référence indéfinie vers « ippsFFTFree_R_32s » 
FixedFAPIFingerprinter.c:(.text+0x4a7): référence indéfinie vers « ippsFFTGetBufSize_R_32s » 
lib_static/linux_x86-64/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « FixedFAPIFingerprinterDelete »: 
FixedFAPIFingerprinter.c:(.text+0x67c): référence indéfinie vers « ippsFFTFree_R_32s » 
lib_static/linux_x86-64/libgnsdk_dsp.a(FixedFAPIFingerprinter.o): dans la fonction « ExtractSoftSubFingerprint »: 
FixedFAPIFingerprinter.c:(.text+0xb18): référence indéfinie vers « ippsFFTFwd_RToPerm_32s_Sfs » 
FixedFAPIFingerprinter.c:(.text+0xb6b): référence indéfinie vers « ippsMagSquared_32sc32s_Sfs » 
lib_static/linux_x86-64/libgnsdk_manager.a(gcsl_process.o): dans la fonction « gcsl_process_library_sym »: 
gcsl_process.c:(.text+0x49): référence indéfinie vers « dlsym » 
lib_static/linux_x86-64/libgnsdk_manager.a(gcsl_process.o): dans la fonction « gcsl_process_library_load »: 
gcsl_process.c:(.text+0x262): référence indéfinie vers « dlopen » 
gcsl_process.c:(.text+0x366): référence indéfinie vers « dlclose » 
lib_static/linux_x86-64/libgnsdk_manager.a(gcsl_process.o): dans la fonction « gcsl_process_library_free »: 
gcsl_process.c:(.text+0x411): référence indéfinie vers « dlclose » 
lib_static/linux_x86-64/libgnsdk_musicid_stream.a(gnsdk_musicid_stream.o): dans la fonction « gnsdk_musicidstream_channel_audio_write »: 
gnsdk_musicid_stream.c:(.text+0x2982): référence indéfinie vers « gcsl_circbuf_write » 
lib_static/linux_x86-64/libgnsdk_musicid_stream.a(mids_fsm.o): dans la fonction « mids_fsm_state_process_circularbuffer »: 
mids_fsm.c:(.text+0x1043): référence indéfinie vers « gcsl_circbuf_size » 
mids_fsm.c:(.text+0x10ec): référence indéfinie vers « gcsl_circbuf_get_newest » 
lib_static/linux_x86-64/libgnsdk_musicid_stream.a(mids_internal.o): dans la fonction « audio_session_delete »: 
mids_internal.c:(.text+0x527): référence indéfinie vers « gcsl_circbuf_delete » 
lib_static/linux_x86-64/libgnsdk_musicid_stream.a(mids_internal.o): dans la fonction « audio_session_create »: 
mids_internal.c:(.text+0x8ed): référence indéfinie vers « gcsl_circbuf_create » 
lib_static/linux_x86-64/libgnsdk_storage_sqlite.a(sqlite3.o): dans la fonction « unixDlSym »: 
sqlite3.c:(.text+0x4606): référence indéfinie vers « dlsym » 
lib_static/linux_x86-64/libgnsdk_storage_sqlite.a(sqlite3.o): dans la fonction « unixDlError »: 
sqlite3.c:(.text+0x1e4f9): référence indéfinie vers « dlerror » 
lib_static/linux_x86-64/libgnsdk_storage_sqlite.a(sqlite3.o): dans la fonction « unixDlOpen »: 
sqlite3.c:(.text+0x45f9): référence indéfinie vers « dlopen » 
lib_static/linux_x86-64/libgnsdk_storage_sqlite.a(sqlite3.o): dans la fonction « unixDlClose »: 
sqlite3.c:(.text+0x4614): référence indéfinie vers « dlclose » 
ipps/libipps.a(jmp_ippsAbs_32s_I_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsAbs_32s_I_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsAbs_32s_I_as.o): dans la fonction « ippsAbs_32s_I »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsAbs_32s_I_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsDCTFwd_32f_I_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsDCTFwd_32f_I_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsDCTFwd_32f_I_as.o): dans la fonction « ippsDCTFwd_32f_I »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsDCTFwd_32f_I_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsDotProd_16s32s32s_Sfs_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsDotProd_16s32s32s_Sfs_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsDotProd_16s32s32s_Sfs_as.o): dans la fonction « ippsDotProd_16s32s32s_Sfs »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsDotProd_16s32s32s_Sfs_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsDotProd_32f_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsDotProd_32f_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsDotProd_32f_as.o): dans la fonction « ippsDotProd_32f »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsDotProd_32f_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsFree_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsFree_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsFree_as.o): dans la fonction « ippsFree »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsFree_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsLShiftC_32s_I_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsLShiftC_32s_I_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsLShiftC_32s_I_as.o): dans la fonction « ippsLShiftC_32s_I »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsLShiftC_32s_I_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsMalloc_32f_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMalloc_32f_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsMalloc_32f_as.o): dans la fonction « ippsMalloc_32f »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMalloc_32f_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsMalloc_32s_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMalloc_32s_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsMalloc_32s_as.o): dans la fonction « ippsMalloc_32s »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMalloc_32s_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsMalloc_8u_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMalloc_8u_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsMalloc_8u_as.o): dans la fonction « ippsMalloc_8u »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMalloc_8u_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsMaxAbs_32s_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMaxAbs_32s_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsMaxAbs_32s_as.o): dans la fonction « ippsMaxAbs_32s »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMaxAbs_32s_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsMinMax_32f_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMinMax_32f_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsMinMax_32f_as.o): dans la fonction « ippsMinMax_32f »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMinMax_32f_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
ipps/libipps.a(jmp_ippsMul_32s_ISfs_as.o): dans la fonction « aucun symbole »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMul_32s_ISfs_as.s:(.text+0x1): référence indéfinie vers « ippSafeInit » 
ipps/libipps.a(jmp_ippsMul_32s_ISfs_as.o): dans la fonction « ippsMul_32s_ISfs »: 
/localdisk/commander/production/ipp901gold/linux_intel64/.build/linux/obj/intel64/ipps/emerged_compl/nonpic/dispatcher/jmp_ippsMul_32s_ISfs_as.s:(.text+0x13): référence indéfinie vers « ippJumpIndexForMergedLibs » 
Process terminated with status 1 (0 minute(s), 3 second(s)) 
50 error(s), 0 warning(s) (0 minute(s), 3 second(s)) 
+0

Вы не связываете необходимые интегральные микросхемы интегральных характеристик Intel . Невозможно сказать, почему, если вы не отправите команду gcc link , которая генерирует ошибки. Вы найдете его в закладке ** Build log ** (а не вкладке ** Построить сообщения **) неудачной сборки. Вы также являетесь , не связывая 'libpthread', возможно, потому, что вы не добавили' -pthread' в ** Опции сборки ** -> ** Настройки компоновщика ** -> ** Другие варианты ссылок **. –

+0

Как я могу связать библиотеки Intel Integrated Performance Primitives? Это возможно на LInux? –

+0

Как я уже сказал, невозможно объяснить отказ более точно, без , видя неудачную команду gcc linkage из журнала сборки. Сообщение информация в вопросе (не в комментариях). –

ответ

0

библиотеках Gracenote SDK, которые вы связывают вызовы с функциями , которые определены в том или ином исполнении Intel Integrated Performance Prim библиотеки. Gracenote SDK (по крайней мере, тот, который у вас есть), очевидно, ожидает, что у вас есть эти библиотеки . Возможно, они содержатся где-то в SDK. Возможно, вы должны получить . Во всяком случае, вы не связываете ни одного из них; следовательно, неопределенные ссылки ошибки связи.

Эти библиотеки имеют названия форм libipp*.a. Ищите их в своем SDK. Если вы не можете найти их, вы можете скачать их бесплатно от here

После того, как вы их получили, вам нужно будет связать свою программу с командной строкой, как:

g++ -L/path/to/lib -L/path/to/lib_static -L/path/to/the/IPP/libraries \ 
-o bin/Release/Gracenote obj/Release/main.o \ 
-lgnsdk_dsp \ 
-lgnsdk_link \ 
-lgnsdk_lookup_local \ 
-lgnsdk_lookup_localstream \ 
-lgnsdk_manager \ 
-lgnsdk_moodgrid \ 
-lgnsdk_musicid \ 
-lgnsdk_musicid_file \ 
-lgnsdk_musicid_stream \ 
-lgnsdk_playlist \ 
-lgnsdk_storage_sqlite \ 
-lgnsdk_video \ 
-lipp? \ 
-lipp?? \ 
-lipp??? \ 
-pthread 

где -lipp? -lipp?? -lipp??? являются любыми IPP библиотеки необходимы, чтобы разрешил все ссылки в библиотеках SDK.

Вам необходимо настроить параметры в проекте Code :: Blocks так, чтобы он сгенерировал правильную командную строку для g ++. Сделайте это следующим образом:

В ->параметры сборки ->Поиск каталогов ->Linker, добавить каждый из:

/path/to/lib 
/path/to/lib_static 
/path/to/the/IPP/libraries 

В ->параметры сборки ->Настройки компоновщика ->Библиотеки ссылок, rem ove все опции lib_static/libgnsdk???.a, которые вы туда ввели.

В ->параметров сборки ->Linker Настройка ->Других вариантов компоновщика, добавить все -l<name> вариант, которые я перечислил выше, плюс -pthread, в том порядке, что я Перечислил их. (Обратите внимание, что -l<name> неверен; -llib<name> неверен.)

Вы можете поэкспериментировать, чтобы узнать, какие именно библиотеки IPP вам нужны для успешной связи.

+0

Благодарим за помощь, я начинаю понимать библиотечную систему ссылок, но у меня всегда есть ошибки (отредактируйте мой ответ). –

+0

@Vincentleveque Извините, я не могу решить это для вас «на расстоянии». Связь очень сложная и очень сломанная. Вам нужна помощь кого-то , который имеет опыт работы с GNSDK на Linux, а также с GCC. Я второй, но не первый :( –

+0

Я делаю свои тесты на старом компьютере с AMD Athlon. Возможно ли, что моя проблема связана с тем, что это не процессор Intel? Я могу попробовать новый ПК с процессором Intel Core i3 –

Смежные вопросы