Linuxulator Dynamic Paths

Bruno Lauzé brunolauze at msn.com
Wed Sep 4 17:56:17 UTC 2013


Hi, 


I trying to see how dynamic paths could be implemented in the linuxulator to handle multiple linux base installation.
Everything would still default to /compat/linux but an environment variable could  change it so we can execute multiple applications from multiple installation.   
Here's the two file that would need to be changed:   

sys/compat/linux/linux_util.c:   
const char      linux_emul_path[] = "/compat/linux";


sys/amd64/linux32/linux32_sysvec.c:   
static Elf32_Brandinfo linux_brand = {	.brand		= ELFOSABI_LINUX,	.machine	= EM_386,	.compat_3_brand	= "Linux",	.emul_path	= "/compat/linux",	.interp_path	= "/lib/ld-linux.so.1",	.sysvec		= &elf_linux_sysvec,	.interp_newpath	= NULL,	.brand_note	= &linux32_brandnote,	.flags		= BI_CAN_EXEC_DYN | BI_BRAND_NOTE};
static Elf32_Brandinfo linux_glibc2brand = {	.brand		= ELFOSABI_LINUX,	.machine	= EM_386,	.compat_3_brand	= "Linux",	.emul_path	= "/compat/linux",	.interp_path	= "/lib/ld-linux.so.2",	.sysvec		= &elf_linux_sysvec,	.interp_newpath	= NULL,	.brand_note	= &linux32_brandnote,	.flags		= BI_CAN_EXEC_DYN | BI_BRAND_NOTE};


 		 	   		  


More information about the freebsd-emulation mailing list