Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Unable to link debug version of a static library ...: (3 Items)
   
Unable to link debug version of a static library ...  
Hi,

Just upgraded to QNX 6.2.3 with the lastest released version of Momentics.

I have an issue where we have development a static library or two which are referenced in other application project 
builds. I am getting the following type of errors.

C:/QNX632/host/win32/x86/usr/bin/qcc -Vgcc_ntoppc -Wl,--no-keep-memory  -M    -oC:/phils_Dev/aeva_hud/trunk/aeva_hud/ppc
/o-be-g/aeva_hud_g    HUD_Event_Emitter.o    VRSProgressUpdate.o    abmain.o    aeva_PLSSDisplayHandler.o    
hud_Displays.o    hud_base.o    hud_cws_win.o    hud_distst_win.o    hud_initialize.o    hud_main_win.o    hud_maint_win
.o    hud_param_win.o    hud_task_handler.o    hud_tasks_win.o    hud_vrs_win.o    hud_wtasks_errors.o    
hud_wtasks_handler.o    hud_wtasks_win.o  -L. -LC:/phils_Dev/aeva_hud/trunk/playWav/ppc/a-be-g -LC:/phils_Dev/aeva_hud/
trunk/aevaIPC/ppc/a-be-g -LC:/phils_Dev/aeva_hud/trunk/bsp-freescale-mgt5200b_input/nto/ppc/a-be-g -LC:/phils_Dev/
aeva_hud/trunk/bsp-freescale-mgt5200b_keymap/nto/ppc/a-be-g -LC:/phils_Dev/aeva_hud/trunk/bsp-freescale-mgt5200b_libipl/
ppc/a-be-g -LC:/phils_Dev/aeva_hud/trunk/bsp-freescale-mgt5200b_libmtd-flash/ppc/a-be-g -LC:/phils_Dev/aeva_hud/trunk/
bsp-freescale-mgt5200b_libstartup/ppc/a-be-g -LC:/QNX632/target/qnx6/ppcbe/lib -LC:/QNX632/target/qnx6/ppcbe/usr/lib    
-Bstatic    -lplayWav_g    -lmmedia    -lc    -lm    -Bdynamic    -lasound    -laoi    -lsocket    -Bstatic    -laevaIPC
    -Bdynamic    -lPtWeb    -lAp    -lph    -lm   -EB  -g      
/cygdrive/c/QNX632/host/win32/x86/usr/bin/ntoppc-ld: cannot find -laevaIPC

Note that the linker is pointing to the correct path for the debug version of the aevaIPC-g library (the debug version).
..

LC:/phils_Dev/aeva_hud/trunk/aevaIPC/ppc/a-be-g

but the linker is looking for aevaIPC, the non-debug version.

When setting up the extra libraries in the respecific project properties dialog and selecting the Project ... button 
followed by drilling down to the specific library and selecting static the following is added to the Extra libraries, 
aevaIPC. At first look this seems reasonable. 

While the make process seems to be able to point to the correct library path for the debug version of the library it is 
not using the correct name for the debug version of the library, that being aevaIPC_g.

Any idea how to work around this issue. It seems to be a bug inthe new IDE to me but maybe I am missing something.

Philip
Re: Unable to link debug version of a static library ...  
The IDE gurus are out of the office, so I - the non-guru - will try to
see if I can help...

In the "Linker" tab, for Category "Extra Libraries", do you have "yes"
in the "Use proper variant" column?
Re: Unable to link debug version of a static library ...  
SWEET!!!!

That was it! Sometimes you get so close to the project you can't see it clearly.

Thank you for the eye opener.

Philip