目录
1、undefined reference to `google::kLogSiteUninitialized'
1、undefined reference to `google::kLogSiteUninitialized'
参考解决链接:https://github.com/google/glog/issues/543
或者按照我的步骤也行
catkin_make时报错如上
sudo apt autoremove libgoogle-glog-dev
git clone https://github.com/google/glog.git
cd glog/
git checkout v0.5.0-rc2
mkdir build && cd build
cmake ..
sudo make -j12 install
总结,出现undefined reference to,通常是你没有链接到这个库,或者这个库在新版本中不存在旧版本的变量或者类的定义。我遇到的这个是glog的版本安装最新,导致别人之前几年的代码glog低版本的跑不了。就是我安装的glog没有了之前的定义,才会出错。
2、如何卸载库
通常库的安装是cmake和make,正式安装是在sudo make install
这是主要是在usr的目录下,例如local或者include或者lib放置头文件,也就是所谓的环境。方便于我们调库时进行访问的一些头文件去寻找对应的cmake配置和路径。
所以卸载库通常是先安装locate
sudo apt install mlocate
locate XXX库
出来一堆路径,下面以casadi库的卸载为例,正常主要就是删除/usr/local开头,其他类似/share不要乱删,特别是在安装ROS后。
sudo rm -rf /usr/local/include/casadi
sudo rm -rf /usr/local/lib/libcasadi*
sudo rm -rf /usr/local/bin/casadi*
3、vscode 代码调试断点失效
在CMakeList.txt添加或者修改为
set(CMAKE_BUILD_TYPE "Debug")
4、casadi库
参考
https://github.com/casadi/casadi/wiki/InstallationLinux
安装依赖ipopt
sudo apt-get install coinor-libipopt-dev
casadi下载(vpn会快一些)
git clone https://github.com/casadi/casadi.git
安装casadi
cd casadi
mkdir build
cd build
cmake -DWITH_IPOPT=true ..
make -j8
sudo make install
测试1
git clone https://github.com/mengxingshifen1218/casadi_test.git
https://blog.csdn.net/qq_35632833/article/details/119192585?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165125417516782248516026%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165125417516782248516026&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-119192585.article_score_rank_blog&utm_term=cppad&spm=1018.2226.3001.4450
测试2
git clone https://github.com/ytwboxing/cartpole_casadi_cplusplus
mytext的解析
https://zhuanlan.zhihu.com/p/391903468
卸载
sudo rm -rf /usr/local/include/casadi
sudo rm -rf /usr/local/lib/libcasadi*
sudo rm -rf /usr/local/bin/casadi*
2023.07.14更新