Tworzymy wiele plików MATLAB MEX, które korzystają z naszej biblioteki komunikacyjnej. Ta biblioteka komunikacyjna znacznie zwiększa Boost. Teraz MATLAB korzysta również z wewnętrznego wzmocnienia, co oznacza, że w standardowej konfiguracji nie możemy użyć wersji boost innej niż ta, która pochodzi z MATLAB lub z całego piekła.Używanie boost w bibliotece MATLAB MEX, innej niż w wersji MATLAB
Problem polega na tym, że wersja doładowania dostarczana z naszą referencyjną wersją programu Matlab (doładowanie 1.40) jest dość stara i zawiera kilka błędów. Bardzo chcielibyśmy użyć nowszej wersji.
Jedyne rozwiązanie, jakie widzę, to stworzenie niestandardowej wersji boost, która żyje w innym obszarze nazw. Wymazywanie nazw powinno następnie zapobiegać konfliktom nazw. To rozwiązanie jest nieco skomplikowane, ponieważ funkcja boost również eksportuje niektóre symbole "C" i zawiera wiele makr, które będą musiały zostać zmienione.
Czy są jakieś zalecane rozwiązania, które nie wymagają tworzenia niestandardowych wersji doładowania?
Czy próbowałeś podać pełną ścieżkę twojej biblioteki Boost za pomocą opcji '-l'? –
Dlaczego to ma znaczenie? I tak spróbuję jutro, po prostu ciekawi. – Ives
może w ten sposób może łączyć się z twoją biblioteką Boost, a nie z MATLAB-em. –