Para generar sentencias de compilación para los objetos que se encuentran en estado inválido en Oracle sería útil el siguiente script:
select 'ALTER ' || OBJECT_TYPE || ' ' || OWNER || '.' || OBJECT_NAME || ' COMPILE;' from dba_objects where status = 'INVALID' and owner = 'nombre_del_schema' and object_type in ('PACKAGE','FUNCTION','PROCEDURE','PACKAGE BODY') ;