Skip to main content

PHP Error: Unable to load dynamic library 'gd'

Currently installing Laravel on my Arch Linux.

I got PHP, MySQL, Apache and Composer installed and trying to install Laravel with this:

$ composer global require laravel/installer

 But got this instead:

PHP Warning:  PHP Startup: Unable to load dynamic library 'gd' (tried: /usr/lib/php/modules/gd (/usr/lib/php/modules/gd: cannot open shared object file: No such file or directory), /usr/lib/php/modules/gd.so (/usr/lib/php/modules/gd.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PHP Warning:  PHP Startup: Unable to load dynamic library 'openssl.so' (tried: /usr/lib/php/modules/openssl.so (/usr/lib/php/modules/openssl.so: cannot open shared object file: No such file or directory), /usr/lib/php/modules/openssl.so.so (/usr/lib/php/modules/openssl.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PHP Warning:  PHP Startup: Unable to load dynamic library 'phar.so' (tried: /usr/lib/php/modules/phar.so (/usr/lib/php/modules/phar.so: cannot open shared object file: No such file or directory), /usr/lib/php/modules/phar.so.so (/usr/lib/php/modules/phar.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PHP Warning:  Phar::mapPhar(): open_basedir restriction in effect. File(/usr/bin/composer) is not within the allowed path(s): (/srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/) in /usr/bin/composer on line 28 PHP Warning:  require(phar://composer.phar/bin/composer): Failed to open stream: phar error: invalid url or non-existent phar "phar://composer.phar/bin/composer" in /usr/bin/composer on line 29 PHP Fatal error:  Uncaught Error: Failed opening required 'phar://composer.phar/bin/composer' (include_path='.:') in /usr/bin/composer:29 Stack trace: #0 {main}   thrown in /usr/bin/composer on line 29
And so I have six errors and I'll be going through all of them one by one. I decided to document it here as a journal which can serve as a note for the future.

First up is the "Unable to load dynamic library 'gd'". 

This means "there's something wrong with gd.

What can we do?
  1. Back up libgd.so first.
  2. Restart server and install again
What is libgd.so? It's a GD Graphics library in a shared object file
  • lib is for library
  • gd is for GD Graphics or GIF Draw graphics
  • .so is an extension name for shared objects file
So the error message is saying that it's unable to load the shared object. I checked the folder and it's not there. Next is to download and install: 

$ sudo pacman -S php-gd

Then restart httpd.service.

Installed Laravel again and the error message is gone, but not all. 

So on to the next one.

Popular

Contextual Stratification - Chapter 21: No Theory of Everything

  The Most Seductive Dream There is a dream that haunts physics, philosophy, and the human imagination itself: one equation. One framework. One truth that explains everything. Einstein spent the last decades of his life searching for it, a unified field theory that would reconcile gravity with electromagnetism, that would show all forces as manifestations of a single underlying reality. He failed, but the dream didn't die. String theory arose promising eleven dimensions and one fundamental entity, vibrating strings from which all particles and forces emerge. Loop quantum gravity offered another path. M-theory suggested a framework encompassing all frameworks. The quest continues. Physicists still seek the Theory of Everything (TOE) the final equation that would subsume quantum mechanics and relativity, explain all particles and forces, predict all phenomena. The dream is powerful because it promises ultimate understanding. No more mysteries. No more competing frameworks. No more b...

Disguising as Equality: A Critique of the Societal Phenomenon We Call Empowerment

  Introduction What if the empowerment movements sweeping the globe aren’t about equality at all? What if they’re merely disguising a chaotic redistribution of power—one that leaves societies fractured, roles meaningless, and traditions discarded? Modern empowerment often dismantles meaningful roles under the pretense of equality, framing success as a zero-sum game: for one group to gain, another must lose. But societies like the Philippines show us an alternative: honoring roles through recognition, celebration, and ritual —without tearing down the structures that give life meaning. The Illusion of Empowerment as Equality Empowerment movements—feminism, LGBTQ+ rights, racial justice—often frame their goals as "equality." Yet, their methods frequently demand role reversals, erase traditions, and force conformity, creating new hierarchies rather than balance. For example, women encouraged to "lean in" to corporate roles often face burnout because the system wasn...

How big is too big? Contextual Stratification Knowledge Framework Primer

  We usually think of size as a smooth continuum—small, medium, large, enormous. But reality doesn't work that way. There are specific thresholds where the rules fundamentally change, where "bigger" doesn't just mean "more of the same" but means "different kind of thing entirely." Consider a sand pile. Add grains one by one. At what point does it become a "pile"? This isn't just semantic—it's about when collective behavior emerges that individual grains don't have. One grain can't avalanche. A pile can. The transition isn't gradual; it's a phase change where new properties suddenly appear. Or consider social groups. A conversation between two people follows certain dynamics. Add a third person, and the dynamics shift—alliances form, mediation becomes possible. Grow to ten people, and you need facilitation. A hundred people require organizational structure. A million people need institutions, laws, and governance ...