Reconfiguring FreeBSD Ports – Remove OPTIONS config For Any Port

last updated in Categories , ,

While building Apache port I was presented with a menu from which I selected certain build options. However, certain option giving out error as follows:
===> apache-2.2.8 mod_mem_cache requires WITH_THREADS.
*** Error code 1

All I wanted to do is disable mod_mem_cache and build Apache again. Unfortunately, it is not allowing me to clear out configuration option. How do I remove all selected options and allow me to start over again?

There are many ways to clear out configuration options under FreeBSD. make command offers various options to revisit CONFIG menu to add, remove, or change options after a port has been built.

make rmconfig option

The simplest one is type command make rmconfig. First login as root; go into the directory containing the port and type:
# cd /usr/ports/www/apache22
# make rmconfig

Output:

===> Removing user-configured options for apache-2.2.8

Use ‘make config’ to modify settings

Another option is type make config.
# make config
# make install clean

To display OPTIONS config for port, enter:
# make showconfig
See the man page ports for more information:
$ man ports

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

14 comment

  1. Thanks! I still find it hard to find the right documentation on how to use these ports-commands on FreeBSD…
    Can’t remember I ever heard of “rmconfig”.

  2. THANK YOU! THANK YOU!!!

    This has solved my problem with apache giving me hell about openldap! Just took out that option and it compiled cleanly!

    Thanks!

    1. Installed port options are located in a file called “options” in the directory named /var/db/ports/”portname”.

      To remove an individual ports options remove that ports directory
      ex: # rm -rf /var/db/ports/apache22

      To remove all the ports options then remove all the sub-directories.

  3. thanks a lot for this tip, i have problems compiling gpg and this tip save me a lot of time

  4. Thanks for the info – btw., you have a typo – it’s not ‘make ports’ but ‘man ports’.

    — regards,
    Denis

  5. find . -type d -iname ‘p5-*’ | while read d ; do pushd . ; cd $d ; make rmconfig ; popd ; done

  6. To remove configuration from all subdirectories, beginning with ‘p5-‘

    find . -type d -iname ‘p5-*’ | while read d ; do pushd . ; cd $d ; make rmconfig ; popd ; done

    Have a question? Post it on our forum!