Skip to content
Advertisement

Can an archive file store external links?

I am trying to link my Android app with a third-party archive. This archive, libvpx_new.a,is one among many archives that are being created as part of building webrtc for Android (on Ubuntu). I copy this archive and the header files into C:ThirdParty directory on Windows. My Android app tries to link with ThirdParty/libvpx_new/libvpx_new.a.

When the build runs, I get link errors such as:

xxx/arm-linux-androideabi/bin/ld.exe: error: cannot open
C:/ThirdParty/libvpx_new/source/libvpx/vp8/libvpx_new.vp8_dx_iface.o:
No such file or directory

If I simply copy all the missing object files (in appropriate subdirectories), my build goes through. It is as if the archive file libvpx_new.a contains links to the object files instead of storing the actual functions.

Is this possible? If so, is there a way to fix the archive file to just absorb the object files instead of pointing to them? Regards.

Advertisement

Answer

It turns out archives can indeed store external links. Such archives are called “thin” archives. Look at Turn thin archive into normal one to convert thin archives to normal archives.

User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement