ld dynamic weak no longer needed