El Roc tuvo su origen, según Rudolph Wittkower, en la lucha entre el ave solar indio Garuda y la serpiente Naga, una palabra que A. de Gubernatis afirmó que significa "elefante" así como "serpiente". El mito de Garuda llevándose a un elefante que estaba luchando con una tortuga aparece en dos epopeyas en sánscrito, el Mahabharata (I.1353) y el Ramayana (III.39). El Roc aparece en Arabic geographies and natural history, popularizado en los cuentos de hadas de Arabia y los relatos de marineros. Ibn Battuta (iv. 305ff) habla de una montaña suspendida en el aire sobre los Mares de China, que fue el Roc.
Otros autores sugieren explicaciones alternativas: el mito podría haberlo originado el quebrantahuesos, la rapaz de mayor envergadura de eurasia, de donde tomaría su coloración blanca y la leyenda de arrojar los elefantes desde las alturas (presumiblemente basada en la costumbre del quebrantahesos de elevarse con los huesos para después soltarlos desde gran altura).
Otra rapaz que se coloca como origen del mito es Aquila chrysaetos simurgh, subespecie extinta del águila real de gran tamaño que habitó durante el Pleistoceno y el Holoceno inicial en la isla de Creta. Simurgh es otro de los nombres del Roc. Dado que en la misma isla y en la misma época existía una especie de elefante diminuto, es probable que la observación de esta ave cazando crías o jóvenes del proboscidio en la antigüedad hubiese originado el mito.
Por último, las verdaderas aves elefante o epiornítidos (Aepyornithidae), pájaros gigantes oriundos de madagascar, aislados tambien en una isla del índico y ponedores de huevos de gran tamaño, guardan relación con el mito del Roc, aunque no como inspiradores; más bien se supone que habrían sido nombrados de tal forma respecto al mito preexistente.