Reputation: 2803
I am trying to build my library using yocto after inheriting autotools. I need to pack ".so" file in the final image as my application dynamically links that library during run-time. But I couldnt find my .so file in the final image, Instead I can see ".so.0" and ".so.0.0.0". So I tried adding below rules in my recipe.
FILES_SOLIBSDEV = ""
FILES_${PN} += "${libdir}/"
Adding this gives me an error.
ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so:
I could understand that ".so" files are symbolic links and I could not pack those in the image as they are intended for dev packages. But Somehow I need ".so" files in the target image. Is there any way out?
NOTE: Modification in application source code to take ".so.0.0.0" is an option but that is least preferred.
Upvotes: 2
Views: 5807
Reputation: 8991
The best solution is to have your application link to the versioned library file.
To avoid the QA error when packaging the unversioned .so
-file, you should add
INSANE_SKIP_${PN} = "dev-so"
to your recipe. That will avoid running the dev-so
test for package ${PN}
.
Upvotes: 6