Possible Cause:
There is one or multiple copies of the same module folder.

Fix:
For example in my case the error returns Fatal error: Cannot redeclare system_requirements() (previously declared in /modules/system/system.install:12) in /modules/modules/system/system.install on line 299

  1. Search for duplicate(s) module folder thats triggering the error. In my case I search for a duplicate system folder.
  2. I found two folders with the same name system. The first one is located under modules/system. And the second one is located under modules/modules/system
  3. To fix this delete the duplicate folder(s). In my case I delete the system folder located under modules/modules/system

If above fix isn't working try the same above steps but search for duplicate(s) inside the other modules folder located under sites/all/modules

Comments

sammyframson’s picture

I recently discovered that somehow I had created a duplicate Modules folder when running into a variety of errors trying to use Drush. The error Drush was giving was:
Drush command terminated abnormally due to an unrecoverable error. [error] Error: Cannot redeclare system_help() (previously declared in /home1/durangp4/public_html/modules/system/system.module:46) in /home1/durangp4/public_html/modules/modules/system/system.module, line 105

I tried to fix this by deleting the duplicate modules folder but when I delete that, I receive a WSOD with the following error:
Fatal error: require_once() [function.require]: Failed opening required 'modules/modules/system/system.admin.inc' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home1/durangp4/public_html/includes/menu.inc on line 348

So somewhere, my site is calling the modules/modules/system/system.admin.inc from the duplicate folder rather than the primary modules/system directory.

Any ideas on where this can be updated would be greatly appreciated!

sammyframson’s picture

I found an answer thanks to some some very helpful folks at Drupal Answers on drupal.stackexchange.com (http://drupal.stackexchange.com/questions/24243/drush-commands-give-errors)

I basically had to remove the duplicate modules folder and found that it was being referenced in my systems table in my database so I had to then manually delete all instances in the system table of any references to "module/module/..." and change them to "module/..."

Then I ran update.php, cleared all caches and had fixed the problem.

Hope that helps someone else.

Anonymous’s picture

hi im having the same issue and found that i had 2 ctools modules installed which cause a big confusion, now i erased the duplicate but im not shure how to do the following can you please help me?

I had to then manually delete all instances in the system table of any references to "module/module/..." and change them to "module/..."

Then I ran update.php, cleared all caches

how can i clear all caches if i cant access my admin account because of the error?

alotronic’s picture

The error thrown will probably reference the two folders you need to sort out. In my case I rather stupidly had an 'archive' folder (why?!) in my module folder with another copy of of views module in it. This was no problem at all on the test site on external server and no problem on localhost, but when I downloaded files and mysql from staging server to localhost to create a sandbox version of the site I started getting the error, and then only in Admin pages. Deleting the Archive folder fixed it.