Multiple Definition of Function Error From Linker

Ran into this today, not sure how to resolve it. My crate depends on rdkafka and rocksdb, which when used together in the same crate produce this error. Originally I was not using rdkafka, but found today that I really need it to take advantage of some of the newer features of Kafka, which the project is centered around. And, I've put a lot of work into developing part of the solution using rocksdb, so I don't want to have to do a refactor on that if I don't have to. Below is the relevant output from the compiler:

= note: /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_sizeofStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:882: multiple definition of `LZ4_sizeofStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_sizeofStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_freeStreamHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:960: multiple definition of `LZ4_freeStreamHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_freeStreamHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_setCompressionLevel':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1013: multiple definition of `LZ4_setCompressionLevel'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_setCompressionLevel+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_createStreamHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:952: multiple definition of `LZ4_createStreamHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_createStreamHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compress_HC_destSize':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:937: multiple definition of `LZ4_compress_HC_destSize'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compress_HC_destSize+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_resetStreamHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:993: multiple definition of `LZ4_resetStreamHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_resetStreamHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compress_HC_extStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:914: multiple definition of `LZ4_compress_HC_extStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compress_HC_extStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compress_HC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:921: multiple definition of `LZ4_compress_HC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compress_HC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_loadDictHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1029: multiple definition of `LZ4_loadDictHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_loadDictHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compress_HC_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1110: multiple definition of `LZ4_compress_HC_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compress_HC_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compress_HC_continue_destSize':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1118: multiple definition of `LZ4_compress_HC_continue_destSize'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compress_HC_continue_destSize+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_saveDictHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1127: multiple definition of `LZ4_saveDictHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_saveDictHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1153: multiple definition of `LZ4_compressHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC_limitedOutput':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1154: multiple definition of `LZ4_compressHC_limitedOutput'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC_limitedOutput+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC2':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1155: multiple definition of `LZ4_compressHC2'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC2+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC2_limitedOutput':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1156: multiple definition of `LZ4_compressHC2_limitedOutput'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC2_limitedOutput+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC_withStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1157: multiple definition of `LZ4_compressHC_withStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC_withStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC_limitedOutput_withStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1158: multiple definition of `LZ4_compressHC_limitedOutput_withStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC_limitedOutput_withStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC2_withStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1159: multiple definition of `LZ4_compressHC2_withStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC2_withStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC2_limitedOutput_withStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1160: multiple definition of `LZ4_compressHC2_limitedOutput_withStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC2_limitedOutput_withStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1161: multiple definition of `LZ4_compressHC_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC_limitedOutput_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1162: multiple definition of `LZ4_compressHC_limitedOutput_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC_limitedOutput_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_sizeofStreamStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1166: multiple definition of `LZ4_sizeofStreamStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_sizeofStreamStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_resetStreamStateHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1171: multiple definition of `LZ4_resetStreamStateHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_resetStreamStateHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_createHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1179: multiple definition of `LZ4_createHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_createHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_freeHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1187: multiple definition of `LZ4_freeHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_freeHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC2_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1194: multiple definition of `LZ4_compressHC2_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC2_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_compressHC2_limitedOutput_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1199: multiple definition of `LZ4_compressHC2_limitedOutput_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_compressHC2_limitedOutput_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4hc.o): in function `LZ4_slideInputBufferHC':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4hc.c:1204: multiple definition of `LZ4_slideInputBufferHC'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4hc.o):lz4hc.c:(.text.LZ4_slideInputBufferHC+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_versionNumber':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:605: multiple definition of `LZ4_versionNumber'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_versionNumber+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_versionString':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:606: multiple definition of `LZ4_versionString'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_versionString+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compressBound':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:607: multiple definition of `LZ4_compressBound'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compressBound+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_sizeofState':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:608: multiple definition of `LZ4_sizeofState'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_sizeofState+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_fast_extState':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1181: multiple definition of `LZ4_compress_fast_extState'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_fast_extState+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_fast':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1249: multiple definition of `LZ4_compress_fast'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_fast+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_default':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1268: multiple definition of `LZ4_compress_default'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_default+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_fast_force':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1276: multiple definition of `LZ4_compress_fast_force'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_fast_force+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_destSize':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1310: multiple definition of `LZ4_compress_destSize'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_destSize+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_createStream':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1334: multiple definition of `LZ4_createStream'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_createStream+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_resetStream':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1370: multiple definition of `LZ4_resetStream'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_resetStream+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_freeStream':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1380: multiple definition of `LZ4_freeStream'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_freeStream+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_loadDict':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1390: multiple definition of `LZ4_loadDict'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_loadDict+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_fast_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1489: multiple definition of `LZ4_compress_fast_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_fast_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_forceExtDict':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1562: multiple definition of `LZ4_compress_forceExtDict'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_forceExtDict+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_saveDict':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:1589: multiple definition of `LZ4_saveDict'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_saveDict+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_safe':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2075: multiple definition of `LZ4_decompress_safe'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_safe+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_safe_partial':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2083: multiple definition of `LZ4_decompress_safe_partial'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_safe_partial+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_fast':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2092: multiple definition of `LZ4_decompress_fast'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_fast+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_safe_withPrefix64k':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2102: multiple definition of `LZ4_decompress_safe_withPrefix64k'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_safe_withPrefix64k+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_fast_withPrefix64k':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:365: multiple definition of `LZ4_decompress_fast_withPrefix64k'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_fast_withPrefix64k+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_safe_forceExtDict':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2129: multiple definition of `LZ4_decompress_safe_forceExtDict'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_safe_forceExtDict+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_createStreamDecode':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2169: multiple definition of `LZ4_createStreamDecode'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_createStreamDecode+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_freeStreamDecode':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2176: multiple definition of `LZ4_freeStreamDecode'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_freeStreamDecode+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_setStreamDecode':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2189: multiple definition of `LZ4_setStreamDecode'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_setStreamDecode+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_safe_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2226: multiple definition of `LZ4_decompress_safe_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_safe_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_fast_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2266: multiple definition of `LZ4_decompress_fast_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_fast_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_safe_usingDict':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2308: multiple definition of `LZ4_decompress_safe_usingDict'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_safe_usingDict+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_decompress_fast_usingDict':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2323: multiple definition of `LZ4_decompress_fast_usingDict'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_decompress_fast_usingDict+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_limitedOutput':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2336: multiple definition of `LZ4_compress_limitedOutput'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_limitedOutput+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2340: multiple definition of `LZ4_compress'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_limitedOutput_withState':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2344: multiple definition of `LZ4_compress_limitedOutput_withState'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_limitedOutput_withState+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_withState':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2348: multiple definition of `LZ4_compress_withState'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_withState+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_limitedOutput_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2352: multiple definition of `LZ4_compress_limitedOutput_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_limitedOutput_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_compress_continue':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2356: multiple definition of `LZ4_compress_continue'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_compress_continue+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_uncompress':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2367: multiple definition of `LZ4_uncompress'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_uncompress+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_uncompress_unknownOutputSize':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2371: multiple definition of `LZ4_uncompress_unknownOutputSize'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_uncompress_unknownOutputSize+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_sizeofStreamState':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2372: multiple definition of `LZ4_sizeofStreamState'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_sizeofStreamState+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_resetStreamState':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2380: multiple definition of `LZ4_resetStreamState'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_resetStreamState+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_create':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2387: multiple definition of `LZ4_create'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_create+0x0): first defined here
        /usr/bin/ld: /app/target/release/deps/librdkafka_sys-eb3b8fb68d23b177.rlib(lz4.o): in function `LZ4_slideInputBuffer':
        /app/target/release/build/rdkafka-sys-db1ceea632eda831/out/src/lz4.c:2393: multiple definition of `LZ4_slideInputBuffer'; /app/target/release/deps/liblibrocksdb_sys-062f045afa20e17b.rlib(lz4.o):lz4.c:(.text.LZ4_slideInputBuffer+0x0): first defined here
        collect2: error: ld returned 1 exit status

Does anyone know how I could resolve this?

Does this work if you enable the external-lz4 option of rdkafka-sys?

Or, alternatively, would it work for you to disable the lz4 feature of rocksdb-sys?

The problem is that both libraries are I think using the same lz4.h implementation in C, and these two different copies of the same library conflict when linking together. When this happens in Rust crates depending on C libraries, the solution is to create a single xxx-sys libary which is the single source of those function names, and both rust crates can depend on. I don't think the solution for multiple C crates is this easy, though...

If I understand the idea behind it correctly, the external-lz4 feature in rdkafka-sys might be the right solution. By that I mean, if you added a similar feature to rocksdb-sys, and enabled both, it would work. I don't have a good idea of how rdkafka-sys's external-lz4 switch works, though...

Thanks. Yes, I tried that. Now getting a different error about undefined references, although I can see lz4-sys is being compiled just before rdkafka...

= note: /usr/bin/ld: /app/target/debug/deps/librdkafka_sys-080157037a5c556c.rlib(rdkafka_lz4.o): in function `rd_kafka_lz4_decompress':
        /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:184: undefined reference to `LZ4F_createDecompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:185: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:203: undefined reference to `LZ4F_getFrameInfo'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:204: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:246: undefined reference to `LZ4F_decompress'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:248: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:305: undefined reference to `LZ4F_freeDecompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:306: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:305: undefined reference to `LZ4F_freeDecompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:306: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:307: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:205: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:249: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:186: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/deps/librdkafka_sys-080157037a5c556c.rlib(rdkafka_lz4.o): in function `rd_kafka_lz4_compress':
        /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:351: undefined reference to `LZ4F_compressBound'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:352: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:369: undefined reference to `LZ4F_createCompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:370: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:378: undefined reference to `LZ4F_compressBegin'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:379: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:392: undefined reference to `LZ4F_compressUpdate'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:394: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:435: undefined reference to `LZ4F_freeCompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:380: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:435: undefined reference to `LZ4F_freeCompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:411: undefined reference to `LZ4F_compressEnd'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:412: undefined reference to `LZ4F_isError'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:435: undefined reference to `LZ4F_freeCompressionContext'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:395: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:353: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:413: undefined reference to `LZ4F_getErrorName'
        /usr/bin/ld: /app/target/debug/build/rdkafka-sys-33a3eac53d49fb8a/out/src/rdkafka_lz4.c:371: undefined reference to `LZ4F_getErrorName'
        collect2: error: ld returned 1 exit status

I seemed to have solved it at this point by:

  1. Enabling external-lz4 in rdkafka
  2. Adding a .cargo/config file to the project folder with the following:
[build]
rustflags = ["-C", "link-args=-llz4"]

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.