Bug#1039087: epic-base: embed yajl

Andrius Merkys merkys at debian.org
Tue Jun 27 07:33:44 BST 2023


Hi,

On Sun, 25 Jun 2023 15:02:18 +0000 =?utf-8?q?Bastien_Roucari=C3=A8s?= 
<rouca at debian.org> wrote:
> Your package embed a copy of yajl.

I agree with un-embedding.

> Could you:
> - compile against the packaged yajl package

I spent some time trying, but did not find an unintrusive way to do so. 
Adding OP_SYS_INCLUDES passes the compilation:

override_dh_auto_build:
         make LINKER_USE_RPATH=NO OP_SYS_INCLUDES=-I/usr/include/yajl

But I could not make the linker use the yajl library, arriving at the 
following failure:

/usr/bin/g++ -o yajl_test 
-L/home/merkys/epics-base-7.0.3.1/lib/linux-x86_64           -rdynamic 
-m64         yajl_test.o    -lCom
/usr/bin/ld: yajl_test.o: in function `main':
yajl_test.c:(.text.startup+0x62): undefined reference to `yajl_alloc'
/usr/bin/ld: yajl_test.c:(.text.startup+0xde): undefined reference to 
`yajl_parse'
/usr/bin/ld: yajl_test.c:(.text.startup+0x119): undefined reference to 
`yajl_complete_parse'
/usr/bin/ld: yajl_test.c:(.text.startup+0x129): undefined reference to 
`yajl_free'
/usr/bin/ld: yajl_test.c:(.text.startup+0x212): undefined reference to 
`yajl_config'
/usr/bin/ld: yajl_test.c:(.text.startup+0x26b): undefined reference to 
`yajl_config'
/usr/bin/ld: yajl_test.c:(.text.startup+0x31b): undefined reference to 
`yajl_config'
/usr/bin/ld: yajl_test.c:(.text.startup+0x343): undefined reference to 
`yajl_config'
/usr/bin/ld: yajl_test.c:(.text.startup+0x374): undefined reference to 
`yajl_get_error'
/usr/bin/ld: yajl_test.c:(.text.startup+0x39d): undefined reference to 
`yajl_free_error'
/usr/bin/ld: yajl_test.c:(.text.startup+0x3fd): undefined reference to 
`yajl_free'
collect2: error: ld returned 1 exit status

> - remove by repacking the embded code copy in order to avoid accidental
> compilation of the embed code copy
This should be doable when the build succeeds.

Best,
Andrius



More information about the debian-science-maintainers mailing list