gpt4 book ai didi

c++ - MINGW BOOST 链接失败

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:54:20 26 4
gpt4 key购买 nike

我正在尝试使用 MINGW 和 BOOST 编译此代码

http://ttic.uchicago.edu/~cotter/projects/SBP/

首先,我在 Linux/UBUNTu 下编译它,没问题。然后我尝试在 W764 下使用 MINGW64。直到创建对象级别,一切正常,但链接失败。这是一个命令

g++ issvm_evaluate.o svm_kernel_base.o svm_kernel_private_cache.o
svm_optimizer_base.o svm_optimizer_classification_biased_perceptron.o
svm_optimizer_classification_biased_sbp.o
svm_optimizer_classification_biased_smo.o
svm_optimizer_classification_biased_sparsifier.o
svm_optimizer_classification_private_find_water_level.o
svm_optimizer_classification_unbiased_perceptron.o
svm_optimizer_classification_unbiased_sbp.o
svm_optimizer_classification_unbiased_smo.o
svm_optimizer_classification_unbiased_sparsifier.o -o issvm_evaluate -fopenmp
-LC:/boost_1_57_0/boost_1_57_0/bin.v2/libs/serialization/build/gcc-mingw-
4.9.0/release/ -lstdc++ -lm -LC:/boost_1_57_0/boost_1_570/bin.v2/libs/iostreams
/build\gcc-mingw-4.9.0/release/ -LC:/boost_1_57_0/boost_1_570/bin.v2
/libs/program_options/build/gcc-mingw-4.9.0/release/

和响应

issvm_evaluate.o:issvm_evaluate.cpp:(.text+0x2a81): undefined reference to boos
t::archive::detail::archive_serializer_map<boost::archive::binary_iarchive>::era
se(boost::archive::detail::basic_serializer const*)'
issvm_evaluate.o:issvm_evaluate.cpp:(.text+0x2ac1): undefined reference to `boos
t::archive::detail::archive_serializer_map<boost::archive::binary_iarchive>::era
se(boost::archive::detail::basic_serializer const*)'

在 gcc 中使用 l 选项从 LINUX 生成文件,但我找不到构建库或file ${patsubst %,-lboost_%,$(BOOST_LIBRARIES)} 在 LINUX 下所以我怀疑 header 就足够了但是在 W7 下我使用 L 选项并给出目录来构建 boost 库。知道问题出在哪里吗??

由于 W7 中 BOOST 的构建目录包含许多库文件,包括 dll,也许应该使用编译器的 l 选项并链接到 dll ??

我也试过使用正斜杠,但还是一样

最佳答案

看来我解决了我的问题。问题是多次使用 -L 选项和不同的路径,这些路径不提供多个搜索路径,只有第一个 -L 有效。此外库必须由 -l 选项显式指定,仅设置 -L 指向正确的目录以及带有库的子目录是不够的。 LIBRARY_PATH 环境变量对库路径的全局设置有效,因此我将 -L 替换为此并将所有请求的库复制到一个目录并由 -l 请求的库指定。

关于c++ - MINGW BOOST 链接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27677261/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com