vs2017调试linux程序 ubutu 16.4 postgresql gdal 附源码

参考

http://www.cjjjs.com/article/2017814153553753

http://www.cjjjs.com/article/201712281844417

http://www.cjjjs.com/article/2017110232024634

https://devblogs.microsoft.com/cppblog/visual-c-for-linux-development-with-cmake/

http://www.cnblogs.com/xylc/p/6533716.html

https://docs.microsoft.com/zh-cn/cpp/linux/prop-pages/directories-linux?view=vs-2019

https://docs.microsoft.com/zh-cn/cpp/linux/configure-a-linux-project?view=vs-2017

https://docs.microsoft.com/zh-cn/cpp/linux/prop-pages/linker-linux?view=vs-2019

https://www.cnblogs.com/lonelyxmas/p/10592084.html

记录下 配置

注:连接器中是设置linux环境的

注:引用库libpq.so ,需要写成pq,去掉lib和.so

源码下载地址:

https://download.csdn.net/download/flowerspring/11102979

vs2017源码

#include <iostream>
#include "gdal.h"
#include "libpq-fe.h"
using namespace std;
#include <stdio.h>
#include <stdlib.h>

void do_exit(PGconn *conn)
{
    PQfinish(conn);
    exit(1);
}

int main(int argc, char * argv[])
{
    cout << "Hello!Honey!" << endl;
    PGconn *conn = PQconnectdb("hostaddr=192.168.5.9 user=zhu password=123456 dbname=testdb");

    if (PQstatus(conn) == CONNECTION_BAD)
    {
        fprintf(stderr, "Connection to database failed:%s\n",
            PQerrorMessage(conn));
        do_exit(conn);
    }

    char *user = PQuser(conn);
    char *db_name = PQdb(conn);
    char *pswd = PQpass(conn);

    printf("User:%s\n", user);
    printf("Db name:%s\n", db_name);
    printf("Psw:%s\n", pswd);

    PQfinish(conn);

    cout << "!!!Hello World!!!" << endl;

    return 0;
}

vs2017调试结果

linux结果

.out文件就是扩展名为out的文件,它本身不代表任何信息。在Linux中判断文件是否是可执行文件,首先要看文件的属性是否是可执行的,它没有一个默认的扩展名表示此文件为可执行文件。为了方便,Linux中可执行文件一般都是没有扩展名的。
在使用gcc编程时,没有指定输入可执行文件名,默认生成可执行文件a.out文件。执行时必须键入命令 ./a.out,即要带上扩展名,如果键入./a 则不正确,因为它寻找a这个文件,而不是a.out这个文件。

猜你喜欢

转载自blog.csdn.net/flowerspring/article/details/89181506
今日推荐