Rom*_*man 2 c++ executable compilation
我有一个hello world cpp文件.如果我通过c++ test.cpp -o test我得到"test"文件来编译它是可执行文件(-rwxr-xr-x)并且如果我执行它,它将被执行并生成预期结果.
但是,如果我使用${CXX} -std=c++0x -I${INCLUDE_DIR1} -c test.cpp -o test -L{LIB_DIR1} -llib_name我也得到"测试"文件但在这种情况下它不可执行.所以,我无法执行它.我试图chmod +x,它获得执行权限,但如果我尝试执行它会得到一条错误消息(无法执行).
我做错了什么以及如何纠正?
Mat*_*Mat 20
-c告诉编译器不生成可执行文件(这意味着"只编译").它只创建一个目标文件,适合链接到可执行文件(可能与其他目标文件和库).
-c如果需要可执行文件,请删除开关.
有关完整编译过程的更多详细信息,请参阅: 编译/链接过程如何工作?
| 归档时间: |
|
| 查看次数: |
1654 次 |
| 最近记录: |