使用VisualGDB在windows上编写linux程序(centos)遇到的问题
2017-05-13 17:17
609 查看
1、编写多线程程序时,报错: undefined reference to `pthread_create',需要在设置中加上多线程的库.
2、使用自己编写的静态库时,需要在Addtional linker inputs中输入使用的库,include drectories中输入头文件路径:
3、使用动态库
我们可以在 ~/.bashrc 或者 ~/.bash_profile 中加入 export 语句,前者在每次登陆和每次打开 shell 都读取一次,后者只在登陆时读取一次。我的习惯是加到 ~/.bashrc 中,在该文件的未尾,可采用如下语句来使设置生效:
2、使用自己编写的静态库时,需要在Addtional linker inputs中输入使用的库,include drectories中输入头文件路径:
3、使用动态库
我们可以在 ~/.bashrc 或者 ~/.bash_profile 中加入 export 语句,前者在每次登陆和每次打开 shell 都读取一次,后者只在登陆时读取一次。我的习惯是加到 ~/.bashrc 中,在该文件的未尾,可采用如下语句来使设置生效:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib 64位放在/usr/lib64下
然后把我们生成的动态库(或第三方库)拷贝到/usr/lib 64位放在/usr/lib64下 即可
设置如下图:
动态库工程设置:
可执行文件工程设置:
Library names中不需要输入libtest_shared.so只需要输入test_shared即可,同时对该设置保存时,有时会报错找不到目录下的***.so文件,如果确定该目录下确实存在该
文件,那么点击“ignore”即可
注:
1、也可以在centos终端用gcc/g++ 进行编译 g++ xxx.cpp xxx.so -o xxx,支持线程则g++ xxx.cpp xxx.so -o xxx -lpthread
2、
弄了很久最后发现一个简单的方法!!!!...工程属性->依赖库->选择依赖态库/动态库工程即可!!此种方法对于使用我们自己生成的库比较方便
4、使用VisualGDB编译链接skynet,运行程序时提示函数未定义.
原来是Makefile setting -> LDFLAGS为"-Wl,-gc-sections",而-gc-sections会使ld删除没有被使用的section,所以这里需要设置成"-Wl,-E"即可,当然设置的位置是
需要导出此未定义函数定义的工程,其它地方不用管
相关文章推荐
- 用vs2008编写和调试linux程序 ----VisualGDB 使用教程
- 用vs2008编写和调试linux程序 ----VisualGDB 使用教程
- 用vs2008编写和调试linux程序 ----VisualGDB 使用教程
- 使用VS+VisualGDB编译调试Linux程序
- 使用Code Blocks编写C++程序遇到的一些问题
- fortran77格式程序从windows下移植linux下遇到的两个问题
- 在windows使用notepad++编写Linux文件的时候,处理换行问题(删掉CF/LF ^M)
- cygwin移植linux程序到windows及在eclipse中使用cygwin的常见问题
- [转]dev C++编写windows程序遇到问题
- 关于windows下使用putty+Xming远程访问linux程序的中文输入问题
- linux下rdesktop远程联接windows系统(配合xshell工具的使用及遇到的问题)
- windows中使用CMake和Eclipse开发Qt程序遇到的问题
- 使用VS+VisualGDB编译调试Linux程序
- 使用VS+VisualGDB编译调试Linux程序
- 使用VS+VisualGDB编译调试Linux程序
- sublime text 2中Windows下编写的脚本在Linux平台上运行遇到字符问题
- linux Eclipse上c++调用使用了tensorflow库的python程序遇到的问题及解决方法
- S3C2440 windows下使用jlink gdbserver,arm-none-eabi-gdb进行裸机程序编写调试
- 使用VS+VisualGDB编译调试Linux程序
- VisualGDB系列5:使用VS来开发Linux程序