mirror of
https://github.com/pstrueb/piper.git
synced 2026-04-26 09:44:49 +00:00
Fix compilation and runtime for M1 Mac
This commit is contained in:
@@ -31,10 +31,13 @@ set(ONNXRUNTIME_ROOTDIR ${CMAKE_CURRENT_LIST_DIR}/../../lib/${CMAKE_HOST_SYSTEM_
|
||||
target_link_libraries(piper
|
||||
onnxruntime
|
||||
pthread
|
||||
-static-libgcc -static-libstdc++
|
||||
${ESPEAK_NG_LIBRARIES}
|
||||
${PCAUDIO_LIBRARIES})
|
||||
|
||||
if(NOT APPLE)
|
||||
target_link_libraries(-static-libgcc -static-libstdc++)
|
||||
endif()
|
||||
|
||||
target_link_directories(piper PUBLIC
|
||||
${ESPEAK_NG_LIBRARY_DIRS}
|
||||
${ONNXRUNTIME_ROOTDIR}/lib)
|
||||
|
||||
@@ -21,6 +21,10 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#ifdef __APPLE__
|
||||
#include <mach-o/dyld.h>
|
||||
#endif
|
||||
|
||||
#include "piper.hpp"
|
||||
|
||||
using namespace std;
|
||||
@@ -66,8 +70,17 @@ int main(int argc, char *argv[]) {
|
||||
GetModuleFileNameW(nullptr, moduleFileName, std::size(moduleFileName));
|
||||
return filesystem::path(moduleFileName);
|
||||
}();
|
||||
#else
|
||||
#ifdef __APPLE__
|
||||
auto exePath = []() {
|
||||
char moduleFileName[PATH_MAX] = { 0 };
|
||||
uint32_t moduleFileNameSize = std::size(moduleFileName);
|
||||
_NSGetExecutablePath(moduleFileName, &moduleFileNameSize);
|
||||
return filesystem::path(moduleFileName);
|
||||
}();
|
||||
#else
|
||||
auto exePath = filesystem::canonical("/proc/self/exe");
|
||||
#endif
|
||||
#endif
|
||||
piper::initialize(exePath.parent_path());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user