mirror of
https://github.com/pstrueb/piper.git
synced 2026-06-03 10:27:01 +00:00
Use RPATH in docker build
This commit is contained in:
@@ -9,7 +9,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
ADD_EXECUTABLE(larynx main.cpp)
|
||||
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra")
|
||||
string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Wl,-rpath,'$ORIGIN'")
|
||||
string(APPEND CMAKE_C_FLAGS " -Wall -Wextra")
|
||||
|
||||
find_package(PkgConfig)
|
||||
@@ -30,10 +30,12 @@ set(ONNXRUNTIME_ROOTDIR "/usr/local/include/onnxruntime")
|
||||
|
||||
target_link_libraries(larynx
|
||||
onnxruntime
|
||||
-static-libgcc -static-libstdc++
|
||||
${ESPEAK_NG_LIBRARIES}
|
||||
${PCAUDIO_LIBRARIES})
|
||||
|
||||
target_link_directories(larynx PUBLIC
|
||||
${ESPEAK_NG_LIBRARY_DIRS}
|
||||
${ONNXRUNTIME_ROOTDIR}/lib)
|
||||
|
||||
target_include_directories(larynx PUBLIC
|
||||
|
||||
+10
-2
@@ -1,6 +1,7 @@
|
||||
#ifndef LARYNX_H_
|
||||
#define LARYNX_H_
|
||||
|
||||
#include <filesystem>
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
@@ -26,11 +27,18 @@ struct Voice {
|
||||
ModelSession session;
|
||||
};
|
||||
|
||||
void initialize() {
|
||||
void initialize(std::filesystem::path cwd) {
|
||||
const char *dataPath = NULL;
|
||||
|
||||
auto cwdDataPath = cwd.append("espeak-ng-data");
|
||||
if (std::filesystem::is_directory(cwdDataPath)) {
|
||||
dataPath = cwdDataPath.c_str();
|
||||
}
|
||||
|
||||
// Set up espeak-ng for calling espeak_TextToPhonemes
|
||||
int result = espeak_Initialize(AUDIO_OUTPUT_SYNCHRONOUS,
|
||||
/*buflength*/ 0,
|
||||
/*path*/ NULL,
|
||||
/*path*/ dataPath,
|
||||
/*options*/ 0);
|
||||
if (result < 0) {
|
||||
throw runtime_error("Failed to initialize eSpeak-ng");
|
||||
|
||||
+2
-1
@@ -35,7 +35,8 @@ int main(int argc, char *argv[]) {
|
||||
RunConfig runConfig;
|
||||
parseArgs(argc, argv, runConfig);
|
||||
|
||||
larynx::initialize();
|
||||
auto exePath = filesystem::path(argv[0]);
|
||||
larynx::initialize(exePath.parent_path());
|
||||
|
||||
larynx::Voice voice;
|
||||
auto startTime = chrono::steady_clock::now();
|
||||
|
||||
Reference in New Issue
Block a user