Внедрить Julia в C — cflags и ldflags

#makefile #julia

#makefile #джулия

Вопрос:

Как переносимо найти cflags и ldflags установки julia для передачи компилятору C?

Я пытаюсь внедрить Julia в приложение на C. Прямо сейчас я могу жестко запрограммировать библиотеки julia в строке компиляции, но я бы предпочел найти механизм, который был бы немного более переносимым.

Вот мой текущий Makefile, который требует, чтобы исполняемый файл julia указывал на исходный каталог.

 JULIA_BIN = $(shell dirname `which julia`)
JULIA_PATH = $(JULIA_BIN)/../..
JULIA_LIBDIR = $(JULIA_PATH)/usr/lib
JULIA_CFLAGS = -I$(JULIA_PATH)/src -I$(JULIA_PATH)/src/support I$(JULIA_PATH)/include/julia -I$(JULIA_PATH)/usr/include
JULIA_LDFLAGS = -L$(JULIA_LIBDIR) -Wl,-rpath -Wl,$(JULIA_LIBDIR) -ljulia

$(LIBTD_JULIA): td.h td_julia.c $(LIBTD)
    $(CC) $(DEBUG) -fPIC -c td_julia.c -o td_julia.o $(JULIA_CFLAGS)
    $(CC) $(DEBUG) -shared -fPIC td_julia.o -o $@ $(JULIA_LDFLAGS) ./$(LIBTD)
 

Комментарии:

1. О, было бы замечательно, если бы julia могла сама указывать предлагаемые флаги компилятора. R имеет нечто похожее, например, вы можете вызвать R CMD config --cppflags . Если в Julia ничего подобного нет (я этого не знаю, извините), может быть, стоит рассмотреть возможность отправки запроса на функцию?

2. Да, у python есть python-config --cflags . Я отправил электронное письмо разработчикам, но разместил здесь, пока жду их ответа, на случай, если это возможно, и другие знали, как это сделать.