This commit is contained in:
blueloveTH 2023-07-15 22:28:59 +08:00
parent 93024830cd
commit 262c5e40d9
3 changed files with 21 additions and 19 deletions

View File

@ -1,3 +1,14 @@
python3 prebuild.py python3 prebuild.py
SRC=$(find src/ -name "*.cpp") SRC=$(find src/ -name "*.cpp")
clang++ -std=c++17 -fno-rtti -O2 -stdlib=libc++ -Wfatal-errors -o main src2/main.cpp $SRC -Iinclude -ldl -rdynamic FLAGS="-std=c++17 -fno-rtti -O2 -stdlib=libc++ -Wfatal-errors -Iinclude"
if [[ "$OSTYPE" == "darwin"* ]]; then
LIB_EXTENSION=".dylib"
FLAGS="$FLAGS -undefined dynamic_lookup"
else
LIB_EXTENSION=".so"
fi
clang++ $FLAGS -o libpocketpy$LIB_EXTENSION $SRC -fPIC -shared -ldl
# compile main.cpp and link to libpocketpy.so
clang++ $FLAGS -o main src2/main.cpp -L. -lpocketpy -Wl,-rpath=.

View File

@ -54,13 +54,6 @@ static int f_input(pkpy_vm* vm){
} }
int main(int argc, char** argv){ int main(int argc, char** argv){
#if _WIN32
// implicitly load pocketpy.dll in current directory
#elif __linux__
dlopen("libpocketpy.so", RTLD_LAZY | RTLD_GLOBAL);
#elif __APPLE__
dlopen("libpocketpy.dylib", RTLD_LAZY | RTLD_GLOBAL);
#endif
pkpy_vm* vm = pkpy_new_vm(true); pkpy_vm* vm = pkpy_new_vm(true);
pkpy_push_function(vm, "input() -> str", f_input); pkpy_push_function(vm, "input() -> str", f_input);

View File

@ -14,7 +14,6 @@ add_library(
test.c test.c
) )
if (WIN32)
add_library( add_library(
pocketpy pocketpy
SHARED SHARED
@ -25,4 +24,3 @@ if (WIN32)
${PROJECT_NAME} ${PROJECT_NAME}
pocketpy pocketpy
) )
endif()