zoukankan      html  css  js  c++  java
  • msgpack-c编写的程序编译报错的解决办法

    背景:

    msgpack像JSON一样,跨平台、跨操作系统、在多种语言之间使用,高效压缩

    msgpack——It's like JSON,but fast and small.

    msgpack会将数据打包成二进制的数据,它的数据格式与json类似,但是在存储时对数字、多字节字符、数组等都做了很多优化,减少了无用的字符,二进制格式,也保证不用字符化带来额外的存储空间的增加,所以在很大程度上减少来传输数据的大小。
    如果说把json数据的大小比作西瓜大小,那么protobuf就是苹果大小,msgpack呢,则是红豆大小,所以msgpack使用优势还是很明显的!

    msgpack官网:https://msgpack.org/

    使用msgpack-c编写一个程序:

    编写完之后使用gcc编译的时候报错

    gcc cJSON.c main.c -o main.o -lm

     后来上网查找:

    gcc cJSON.c main.c -o main.o -lm -lmsgpack

     网上说搜索下有没有libmsgpack.so这个文件

    find / -name libmsgpack.so  找不到

    后来试了下模糊搜索:find / -name *libmsgpack*,结果搜到了,是libmsgpackc.so文件

    然后运行:gcc cJSON.c main.c -o main.o -lmsgpackc -lm  没有报错

    最后运行编译好的文件又报错:error while loading shared libraries: libmsgpackc.so.2: cannot open shared object file: No such file or directory

     然后又上网查了下,

    先运行   echo $LD_LIBRARY_PATH如果没有任何显示就运行下面的命令:

     LD_LIBRARY_PATH=/usr/local/lib

    export LD_LIBRARY_PATH

    最后运行 ./main.o发现成功了

  • 相关阅读:
    Leetcode-645 Set Mismatch
    2017百度软研(C++)
    二叉树中任意两个节点的最近公共祖先
    不用加减乘除做加法
    一些leetcode算法题
    Leetcode 98. Validate Binary Search Tree
    C++ 通过ostringstream 实现任意类型转string
    Leetcode 215. Kth Largest Element in an Array
    382. Linked List Random Node
    一些基础函数的实现
  • 原文地址:https://www.cnblogs.com/zhaijing/p/15433501.html
Copyright © 2011-2022 走看看