Post by Ãscar Fuenteshttp://www.cmake.org/Wiki/CMake_FAQ#Can_I_do_.22make_uninstall.22_with_CMake.3F
Hello, I config my project as the above told.
Everything is OK when I "make uninstall". But the only thing I can't deal
with is that I can't delete some links which point to some libraries.
Have you checked to make sure you have permissions to delete the
affected files?
What version of CMake are you using?
Have you tried this with CMake 2.6.2?
Can you create and send to the list a small example which reproduces
the problem you're having?
--
Philip Lowman
Ok, Philip Lowman. I'd like to give you some details:
$ cmake --version
cmake version 2.6-patch 2
$ cmake -DCMAKE_INSTALL_PREFIX=~/usr ..
<Everything goes well, snip the details.>
$ make
<Everything goes well, snip the details.>
$ tree ~/usr
/home/kermit/usr [error opening dir]
0 directories, 0 files
$ make install
[ 10%] Built target FreeReciteUi
[ 90%] Built target FreeReciteCore
[100%] Built target FreeRecite-core
Install the project...
-- Install configuration: ""
-- Installing: /home/kermit/usr/share/FreeRecite
-- Installing: /home/kermit/usr/share/FreeRecite/freeRecite.dict
-- Installing: /home/kermit/usr/share/FreeRecite/freeRecite.mgr
-- Installing: /home/kermit/usr/share/FreeRecite/tasks
-- Installing: /home/kermit/usr/share/FreeRecite/tasks/freeRecite.dict
-- Installing: /home/kermit/usr/bin/FreeRecite
-- Installing: /home/kermit/usr/bin/FreeRecite-core
-- Installing: /home/kermit/usr/lib/libFreeReciteCore.so.1.0
-- Installing: /home/kermit/usr/lib/libFreeReciteCore.so
-- Installing: /home/kermit/usr/lib/libFreeReciteUi.so.1.0
-- Installing: /home/kermit/usr/lib/libFreeReciteUi.so
$ tree ~/usr
/home/kermit/usr
|-- bin
| |-- FreeRecite
| `-- FreeRecite-core
|-- lib
| |-- libFreeReciteCore.so -> libFreeReciteCore.so.1.0
| |-- libFreeReciteCore.so.1.0
| |-- libFreeReciteUi.so -> libFreeReciteUi.so.1.0
| `-- libFreeReciteUi.so.1.0
`-- share
`-- FreeRecite
|-- freeRecite.dict
|-- freeRecite.mgr
`-- tasks
`-- freeRecite.dict
5 directories, 9 files
$ make uninstall
Scanning dependencies of target uninstall
-- Uninstalling "/home/kermit/usr/share/FreeRecite/freeRecite.dict"
-- Uninstalling "/home/kermit/usr/share/FreeRecite/freeRecite.mgr"
-- Uninstalling "/home/kermit/usr/share/FreeRecite/tasks/freeRecite.dict"
-- Uninstalling "/home/kermit/usr/bin/FreeRecite"
-- Uninstalling "/home/kermit/usr/bin/FreeRecite-core"
-- Uninstalling "/home/kermit/usr/lib/libFreeReciteCore.so.1.0"
-- Uninstalling "/home/kermit/usr/lib/libFreeReciteCore.so"
-- File "/home/kermit/usr/lib/libFreeReciteCore.so" does not exist.
-- Uninstalling "/home/kermit/usr/lib/libFreeReciteUi.so.1.0"
-- Uninstalling "/home/kermit/usr/lib/libFreeReciteUi.so"
-- File "/home/kermit/usr/lib/libFreeReciteUi.so" does not exist.
Built target uninstall
$ tree ~/usr
/home/kermit/usr
|-- bin
|-- lib
| |-- libFreeReciteCore.so -> libFreeReciteCore.so.1.0
| `-- libFreeReciteUi.so -> libFreeReciteUi.so.1.0
`-- share
`-- FreeRecite
`-- tasks
5 directories, 2 files
Now, as you see, the link also exists. I can't delete it automatically.
The lib core's CMakeLists.txt I wrote like this:
SET(LIBFREERECITECORE_SRC ConfigHolder.cpp DictItem.cpp Reciter.cpp
ForgetCurve.cpp Task.cpp Dict.cpp Manager.cpp WordList.cpp)
ADD_LIBRARY(FreeReciteCore SHARED ${LIBFREERECITECORE_SRC})
SET_TARGET_PROPERTIES(FreeReciteCore PROPERTIES VERSION 1.0 SOVERSION 1.0)
INSTALL(TARGETS FreeReciteCore LIBRARY DESTINATION lib)
Is there something wrong? And I don't know why "make install" will
create the links for
the library. They do nothing for me. Can I avoid it?
Thank you, very much!