多分私は何かが欠けているかもしれませんが、私はopencvの静的ライブラリを構築できません。OpenCVを静的ライブラリとして構築する
セットアップ:
のKubuntu 12.04
のgcc 4.6.3
は、(サイト上で利用できる最後の)3.81
cmakeの2.8.7
OpenCVの2.4.6.1
作ります私はすべての仕事を手動で行います。私はcmake-guiと一緒にやってみた。
私はそれを書いています。
$ cmakeの-D CMAKE_BUILD_TYPE = RELEASE -D CMAKE_INSTALL_PREFIX =は/ usr/local -D BUILD_PYTHON_SUPPORT = -D WITH_QT ON = -D BUILD_SHARED_LIBRARIES ON = OFF ..
(IもBUILD_SHARED_LIBRARIES = NOと試み)
私は(例えばコア用)で何を得る:
- libopencv_core.so libopencv_core.so.2.4
- libopencv_真実を言って
libopencv_core_pch_dephelp.a core.so.2.4.6
私はLinux上にパッケージ/ libsを構築している初心者です。私は間違ったことがあると確信していますが、私は何がわかりません。また、私は動的ライブラリを使用したくないです...
おかげさしで!
EDITは、私はまだ、動的LIBSとして建てられを参照してください
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
BUILD_PYTHON_SUPPORT
BUILD_SHARED_LIBRARIES
... cmakeのコマンドライン
Result:
-- General configuration for OpenCV 2.4.6.1 =====================================
-- Version control: unknown
--
-- Platform:
-- Host: Linux 3.2.0-51-generic x86_64
-- CMake: 2.8.7
-- CMake generator: Unix Makefiles
-- CMake build tool: /usr/bin/make
-- Configuration: RELEASE
--
-- C/C++:
-- Built as dynamic libs?: YES
-- C++ Compiler: /usr/bin/c++ (ver 4.6)
-- C++ flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -O3 -DNDEBUG -DNDEBUG
-- C++ flags (Debug): -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -g -O0 -DDEBUG -D_DEBUG -ggdb3
-- C Compiler: /usr/bin/gcc
-- C flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -O3 -DNDEBUG -DNDEBUG
-- C flags (Debug): -fsigned-char -W -Wall -Werror=return-type -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-unnamed-type-template-args -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -msse -msse2 -msse3 -ffunction-sections -g -O0 -DDEBUG -D_DEBUG -ggdb3
-- Linker flags (Release):
-- Linker flags (Debug):
-- Precompiled headers: YES
--
-- OpenCV modules:
-- To be built: core imgproc flann highgui features2d calib3d ml video objdetect contrib photo legacy gpu nonfree java python stitching superres ts videostab
に... -Dの間に空白を削除しました?: YESそれはBUILD_SHARED_LIBRARIES変数について気にしないことを私に伝えます!
でなければなりません
BUILD_SHARED_LIBRARIES
はBUILD_SHARED_LIBS
とBUILD_PYTHON_SUPPORT
する必要がありますが、 '-D'フラグとその値の間にスペースを入れずにCMakeを起動しようとしたことがありますか?したがって、たとえば'cmake。 -DCMAKE_BUILD_TYPE =リリース...-DBUILD_SHARED_LIBRARIES = OFF' – Fraser私はそれをうまく試しました。私の質問の** EDIT **を参照してください。 –
愚か私です! ** - DBUILD_SHARED_LIBS = NO **です! BUILD_SHARED_LIBRARIES ... –