fix python site-packages install path
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9a4ecdd..cb90012 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -40,6 +40,12 @@
 endif()
 
 find_package(Python REQUIRED COMPONENTS Interpreter)
+execute_process(
+    COMMAND ${Python_EXECUTABLE} -c
+        "import os.path, sys, sysconfig; print(os.path.relpath(sysconfig.get_path('purelib'), start=sys.prefix))"
+    OUTPUT_VARIABLE PYTHON_INSTDIR
+    OUTPUT_STRIP_TRAILING_WHITESPACE
+)
 
 if(nanopb_BUILD_GENERATOR)
     set(generator_protos nanopb)
@@ -56,13 +62,13 @@
         install(
             FILES ${PROJECT_BINARY_DIR}/${generator_proto_py_file}
                   ${generator_proto_file}
-            DESTINATION ${Python_SITELIB}/proto/
+            DESTINATION ${PYTHON_INSTDIR}/proto/
         )
     endforeach()
 endif()
 
 install(FILES generator/proto/_utils.py
-        DESTINATION ${Python_SITELIB}/proto/)
+        DESTINATION ${PYTHON_INSTDIR}/proto/)
 
 if(WIN32)
     install(
@@ -73,7 +79,7 @@
     )
 else()
     install(
-        PROGRAMS 
+        PROGRAMS
             generator/nanopb_generator.py
             generator/protoc-gen-nanopb
         DESTINATION ${CMAKE_INSTALL_BINDIR}
@@ -94,7 +100,7 @@
             SOVERSION ${nanopb_SOVERSION})
         install(TARGETS protobuf-nanopb EXPORT nanopb-targets
             ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-	    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+            LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
             RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
         target_include_directories(protobuf-nanopb INTERFACE
             $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>