g++連結報collect2 error ld returned 1 exit status錯誤
一個晚上都沒有解決這個bug,問了個同學才知道。
模板程式設計時,如果分離編譯會造成連結出錯,報collect2 error ld returned 1 exit status錯誤。
解決方案:
1. 實現寫到.h檔案中,當然這樣可能會造成可執行程式過大;
2. 在模板實現檔案中例項化一份別的cpp需要用到的模板例項。
原因:
連結器去別的.o檔案找實現,模板實現類沒有例項化的程式碼,比如你需要A<int>,而模板實現類.o檔案中找不到A<int>的函式入口,所以出錯。
具現(instantiations):表示程式將真正的型別和表示式繫結到模板相關形式引數上的操作。也叫做例項化。
在C++中。編譯器在看到模板的定義的時候。並不馬上產生程式碼,僅僅有在看到用到模板時,比方呼叫了模板函式 或者 定義了類模板的
物件的時候。編譯器才產生特定型別的程式碼。
Appendix:
普通的連結出錯一般就是找不到實現,或者漏掉了需要連結的目標檔案或動態、靜態連結庫,查詢一下即可。
在C++中。編譯器在看到模板的定義的時候。並不馬上產生程式碼,僅僅有在看到用到模板時,比方呼叫了模板函式 或者 定義了類模板的
物件的時候。編譯器才產生特定型別的程式碼。
相關推薦
g++連結報collect2 error ld returned 1 exit status錯誤
一個晚上都沒有解決這個bug,問了個同學才知道。 模板程式設計時,如果分離編譯會造成連結出錯,報collect2 error ld returned 1 exit status錯誤。
關於**[Error] ld rerurned 1 exit status**的解決方法
技術標籤:c語言常見錯誤c語言 ##關於**[Error] ld rerurned 1 exit status**的解決方法
id returned 1 exit status是什麼錯誤_mysql 中count(1) count(*) count(col_name)區別
技術標籤:id returned 1 exit status是什麼錯誤 mysql 中count(1) count(*) count(col_name)區別
pycharm 2020.2.4 pip install Flask 報錯 Error:Non-zero exit code的問題
Problem: Solution: 參考stackoverflow給出的解決方案:https://stackoverflow.com/questions/65085956/pycharm-venv-failed-no-such-option-build-dir
mmdetection踩坑記錄 error: command 'g++' failed with exit status 1
最近在搭建一個基於基於mmdetection的一個環境,遇到了各種gcc g++問題: 1.\'\'ImportError: ***/miniconda3/envs/open-mmlab/lib/python3.7/site-packages/torch/../../../libstdc++.so.6: version `CXXABI_1.3.11
idea執行eclipse報錯Error:(1, 1) java: 非法字元: ‘\ufeff’
技術標籤:亂碼java Error:(1, 1) java: 非法字元: ‘\\ufeff’ 一、問題 用IDEA開啟eclipse java專案編譯時,出現以下錯誤:
遠端克隆non-CDB orcl報錯:ORA-17628: Oracle error 1031 returned by remote Oracle server ORA-01031: insufficient privileges...
報錯資訊 遠端克隆non-CDB orcl報錯 SYS@cdb3> create pluggable database pdb4 from non$cdb@lk_orcl file_name_convert=(\'/u01/app/oracle/oradata/ORCL\',\'/u01/app/oracle/oradata/CDB3/pdb4\');
Python 常見問題 - pip install 指定 poetry 匯出的 requirements.txt,報錯 ERROR: In --require-hashes mode, all requirements must have their versions pinned with ==. These do not: cffi>=1.1 from https://.....
背景 Python 3.9 pip 21.2.3 poetry1.1.8 執行了命令,匯出 requirements.txt poetry export-f requirements.txt --output requirements.txt
資料庫中插入中文的時候報錯ERROR 1366 (HY000): Incorrect string value: '\xE4\xB8\xAD\xE9\xAB\x98...' for column 'Cname' at row 1
在我們插入資料中有中文的時候會報錯如下: root@leadchina 07:43:32->INSERT INTO student VALUES(0001,\'巨集志\',\'男\',30,\'計算機網路\');
.net core WPF關於程序開啟網頁連結報錯"檔案找不到"
System.Diagnostics.Process proc = new System.Diagnostics.Process();proc.StartInfo.FileName = \"{url}\";proc.Start();
hive的load報錯Error: EXECUTION FAILED: Task MOVE error HiveException: [Error 20531] Unable to move source hdfs:
hive在進行資料load的時候報錯。 Error: EXECUTION FAILED: Task MOVE error HiveException: [Error 20531] Unable to move source hdfs://nameservice1/tmp/logs to destination hdfs://nameservice1/inceptor1/us
解決MySQL 8.0 設定簡單密碼報錯ERROR 1819 (HY000): Your password does not satisfy the current policy require...
MySQL8.0下設定簡單密碼出現錯誤提示:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
k8s安裝報錯 Error: unknown flag: --experimental-upload-certs
今天安裝k8sV1.16的版本時候,執行突然發現命令不對,之前安裝V1.15的時候是可以的,可能是版本升級的原因。
機器重啟後 docker 容器啟動報錯 error creating overlay mount to
機器重啟後 docker 容器啟動報錯 error creating overlay mount to 作者:張首富 時間:2020-07-29
python3安裝poster庫時報錯解決:ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
D:\\Python\\Python37-32\\test>pip install poster Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
docker-compose 安裝問題:error: command 'i686-linux-gnu-gcc' failed with exit status 1
# sudo pip3.5 install docker-compose 安裝docker-compose的時候報錯如下: no previously-included directories found matching \'docs/_build\'
kafka啟動報錯ERROR Processor got uncaught exception以及徹底刪除topic
啟動kafka 命令:/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties
Springboot啟動報錯Error creating bean with name 'xxx' defined in URL [xxx]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instan
Error creating bean with name \'xxx\' defined in URL [xxx]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [xxx]: Constru
Git push 報錯error: failed to push some refs to ‘[email protected]‘
Git push 報錯error: failed to push some refs to ‘[email protected]’ 出錯過程:我在github上建立了一個倉庫並直接在github上線上建立了一個readme.md檔案就是點選了這個後來上網查了資料說是如果
Python安裝問題:ERROR: Command errored out with exit status 1:
Try to run this command from the system terminal. Make sure that you use the correct version of ‘pip’ installed for your Python interpreter located at ‘C:\\Users\\123\\PycharmProjects\\pyt