From: Mr D. F. <mr....@go...> - 2012-02-26 15:01:11
|
> You can check if executable is static by using > arm-unknown-linux-gnueabi-readelf --relocas. > The fact that the archive has a lot of files does not mean the openvpn > is not static. > Well, I don't really know what you understand "static linking" to be, but to me it means that all external functions, subroutines etc, which are resolved at compile-time, are copied into a target application by the gcc linker, producing an object file and then a stand-alone executable ("stand-alone" being the key word here!). Your build script, evidently, does not do that and I already pointed out the changes you may need to make to allow a *stand-alone* openvpn executable to be produced. If you believe "static linking" to mean something else from what I described above, please enlighten us all! If I have to deploy additional files alongside openvpn, then I may as well have it dynamically linked and deploy the entire dependencies chain (using ldd as guidance). The reason I can't/won't do that is because to satisfy this, I have to 1) spend a lot of my time digging out dependencies, without the guarantee that it would ever work, and 2) as my rootfs is read-only, whatever I do it will be instantly lost on reboot, so the whole exercise would be utterly pointless. > Anyway it is working at my side, and it is a standard process. > You can adjust the script for your needs. > I already did, you may as well do the same and make the changes I suggested earlier for the "really_static" option to really work, because, as it stands, "really_static" isn't so as openvpn still needs external files to operate. |