0

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.

Peter
  • 11,260
  • 14
  • 78
  • 155

1 Answers1

0

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.

Community
  • 1
  • 1
Peter
  • 11,260
  • 14
  • 78
  • 155