diff --git a/trunk/fcl/CMakeLists.txt b/trunk/fcl/CMakeLists.txt
index 517210a354fd86921d4c33103702d6a862c3a40a..e3ecd617eb95e2c86e623cc6fdbf20934d6ec282 100644
--- a/trunk/fcl/CMakeLists.txt
+++ b/trunk/fcl/CMakeLists.txt
@@ -26,10 +26,23 @@ if(FCL_USE_SSE)
 endif()
 
 # Find Octomap (optional)
-find_package(PkgConfig REQUIRED)
+find_package(PkgConfig QUIET)
 set(FCL_HAVE_OCTOMAP 0)
-pkg_check_modules(OCTOMAP QUIET octomap)
-if (OCTOMAP_INCLUDE_DIRS)
+if(PKG_CONFIG_FOUND)
+    pkg_check_modules(OCTOMAP QUIET octomap)
+endif()
+if(NOT OCTOMAP_FOUND)
+    # if pkfconfig is not installed, then fall back on more fragile detection
+    # of octomap
+    find_path(OCTOMAP_INCLUDE_DIRS octomap.h
+        PATH_SUFFIXES octomap)
+    find_path(OCTOMAP_LIBRARY_DIRS
+        ${CMAKE_SHARED_LIBRARY_PREFIX}octomap${CMAKE_SHARED_LIBRARY_SUFFIX})
+    if(OCTOMAP_INCLUDE_DIRS AND OCTOMAP_LIBRARY_DIRS)
+        set(OCTOMAP_LIBRARIES "octomap;octomath")
+    endif()
+endif()
+if (OCTOMAP_INCLUDE_DIRS AND OCTOMAP_LIBRARY_DIRS)
   include_directories(${OCTOMAP_INCLUDE_DIRS})
   link_directories(${OCTOMAP_LIBRARY_DIRS})
   set(FCL_HAVE_OCTOMAP 1)
@@ -47,16 +60,25 @@ include_directories(${Boost_INCLUDE_DIR})
 # make sure we know what flag we used for SSE 
 include_directories("include")
 
-pkg_check_modules(CCD REQUIRED ccd)
+if(PKG_CONFIG_FOUND)
+    pkg_check_modules(CCD REQUIRED ccd)
+endif()
+if(NOT CCD_FOUND)
+    # if pkfconfig is not installed, then fall back on more fragile detection
+    # of ccd
+    find_path(CCD_INCLUDE_DIRS ccd.h
+        PATH_SUFFIXES ccd)
+    find_path(CCD_LIBRARY_DIRS
+        ${CMAKE_SHARED_LIBRARY_PREFIX}ccd${CMAKE_SHARED_LIBRARY_SUFFIX})
+    if(CCD_INCLUDE_DIRS AND CCD_LIBRARY_DIRS)
+        set(CCD_LIBRARIES "ccd")
+    else()
+        message(FATAL_ERROR "Libccd is required by FCL")
+    endif()
+endif()
 include_directories(${CCD_INCLUDE_DIRS})
 link_directories(${CCD_LIBRARY_DIRS})
 
-pkg_check_modules(OCTOMAP QUIET octomap)
-if(OCTOMAP_FOUND)
-    include_directories(${OCTOMAP_INCLUDE_DIRS})
-    link_directories(${OCTOMAP_LIBRARY_DIRS})
-endif()
-
 add_subdirectory(include/fcl)
 add_subdirectory(src)