Linking to a library of my own code that requires 3rd party library

Thanks for your replies. I am rather confused as, if I build with ninja -v, I see the compile commands for the source files and then a link command for the executable, which begins:

/opt/rh/devtoolset-7/root/usr/bin/g++   -I../dpdk/include -I../include -I/opt/dpdk/dpdk-stable-18.11.8/x86_64-native-linuxapp-gcc/include -I../dpdk/../include -march=native -g   -pthread -std=c++1y -MD -MT CMakeFiles/dpdk_test.dir/main.cpp.o -MF CMakeFiles/dpdk_test.dir/main.cpp.o.d -o CMakeFiles/dpdk_test.dir/main.cpp.o -c ../main.cpp
[6/6] : && /opt/rh/devtoolset-7/root/usr/bin/g++  -march=native -g   
CMakeFiles/dpdk_test.dir/main.cpp.o CMakeFiles/dpdk_test.dir/Threads.cpp.o CMakeFiles/dpdk_test.dir/ThreadMon.cpp.o 
CMakeFiles/dpdk_test.dir/ThreadMSG.cpp.o CMakeFiles/dpdk_test.dir/_kbhit.cpp.o  
-o dpdk_test  
dpdk/libdpdk.a  
/usr/lib64/libdl.so  /usr/lib64/libutil.so  /usr/lib64/libm.so  -Xlinker  
-export-dynamic  /opt/dpdk/dpdk-stable-18.11.8/x86_64-native-linuxapp-gcc/lib/librte_flow_classify.a  
-Wl,--whole-archive  /opt/dpdk/dpdk-stable-18.11.8/x86_64-native-linuxapp-gcc/lib/librte_pipeline.a  
/opt/dpdk/dpdk-stable-18.11.8/x86_64-native-linuxapp-gcc/lib/librte_table.a
etc.

That link command links to libdpdk.a (my library) as expected, but it also links to all the 3rd party dpdk libraries, which I don’t expect.

Furthermore, I don’t see a linker command for libdpdk.a itself.

Any ideas please?