fix for linux-building

This commit is contained in:
gb 2023-11-20 15:45:40 +08:00
parent 080f617442
commit cd6e9af474
7 changed files with 24 additions and 22 deletions

View File

@ -61,7 +61,7 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/../3rdparty/opencv/include ${PROJECT_SOURCE_DIR}/../3rdparty/opencv/include
${PROJECT_SOURCE_DIR}/../3rdparty/tiff/include ${PROJECT_SOURCE_DIR}/../3rdparty/tiff/include
${PROJECT_SOURCE_DIR}/../../../sdk/include ${PROJECT_SOURCE_DIR}/../../../sdk/include
${PROJECT_SOURCE_DIR}/../../sdk/hginclude ${PROJECT_SOURCE_DIR}/../../sdk/base
${PROJECT_SOURCE_DIR}/../../sdk ${PROJECT_SOURCE_DIR}/../../sdk
) )
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../../../build) set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../../../build)

View File

@ -14,7 +14,7 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -O2")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -O2") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -O2")
aux_source_directory(${PROJECT_SOURCE_DIR} DIR_SRCS) aux_source_directory(${PROJECT_SOURCE_DIR} DIR_SRCS)
file(GLOB DIR_HEADS "${PROJECT_SOURCE_DIR}/*.h" "${PROJECT_SOURCE_DIR}/*.hpp" file(GLOB DIR_HEADS "${PROJECT_SOURCE_DIR}/*.h" "${PROJECT_SOURCE_DIR}/*.hpp"
"${PROJECT_SOURCE_DIR}/../../sdk/hginclude/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/hginclude/*.cpp" "${PROJECT_SOURCE_DIR}/../../sdk/base/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/base/*.cpp"
"${PROJECT_SOURCE_DIR}/../../sdk/json/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/json/*.c*" "${PROJECT_SOURCE_DIR}/../../sdk/json/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/json/*.c*"
"${PROJECT_SOURCE_DIR}/../../sdk/sane_opt_json/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/sane_opt_json/*.c*" "${PROJECT_SOURCE_DIR}/../../sdk/sane_opt_json/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/sane_opt_json/*.c*"
) )

View File

@ -27,7 +27,7 @@ target_link_libraries(${PROJECT_NAME} PRIVATE hgdriver
target_link_libraries(${PROJECT_NAME} PRIVATE -static-libgcc -static-libstdc++ -Wl,--exclude-libs,ALL -zdefs -Bdirect pthread dl -Wl,-rpath,$ORIGIN) target_link_libraries(${PROJECT_NAME} PRIVATE -static-libgcc -static-libstdc++ -Wl,--exclude-libs,ALL -zdefs -Bdirect pthread dl -Wl,-rpath,$ORIGIN)
target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR} target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/../sdk/hginclude ${PROJECT_SOURCE_DIR}/../sdk/base
${PROJECT_SOURCE_DIR}/../sdk ${PROJECT_SOURCE_DIR}/../sdk
${PROJECT_SOURCE_DIR}/../../sdk/include ${PROJECT_SOURCE_DIR}/../../sdk/include
) )

View File

@ -17,10 +17,10 @@
#else #else
#define MKDIR(a, b) mkdir(a, b) #define MKDIR(a, b) mkdir(a, b)
#include <pthread.h> #include <pthread.h>
#include <signal.h>
#endif #endif
#include <sane/sane_option_definitions.h> #include <sane/sane_option_definitions.h>
#include "sane_option.h"
#include <lang/app_language.h> #include <lang/app_language.h>
#include <base/utils.h> #include <base/utils.h>
#include <huagao/brand.h> #include <huagao/brand.h>
@ -265,7 +265,6 @@ const SANE_Device** hg_sane_middleware::to_sane_device(ScannerInfo* hgscanner, i
bytes += ALIGN_INT(strlen(hgscanner[i].name) + 1); bytes += ALIGN_INT(strlen(hgscanner[i].name) + 1);
bytes += ALIGN_INT(strlen(hgscanner[i].vendor) + 1); bytes += ALIGN_INT(strlen(hgscanner[i].vendor) + 1);
bytes += ALIGN_INT(strlen(hgscanner[i].model) + 1); bytes += ALIGN_INT(strlen(hgscanner[i].model) + 1);
bytes += ALIGN_INT(strlen(hgscanner[i].type) + 1);
} }
bytes = ALIGN_INT(bytes + 16); bytes = ALIGN_INT(bytes + 16);
@ -291,7 +290,6 @@ const SANE_Device** hg_sane_middleware::to_sane_device(ScannerInfo* hgscanner, i
COPY_DEVICE_MEMBER(name); COPY_DEVICE_MEMBER(name);
COPY_DEVICE_MEMBER(vendor); COPY_DEVICE_MEMBER(vendor);
COPY_DEVICE_MEMBER(model); COPY_DEVICE_MEMBER(model);
COPY_DEVICE_MEMBER(type);
} }
//utils::to_log_with_api(hg_scanner_log_is_enable, hg_scanner_log, LOG_LEVEL_ALL, "Memory usage: %u / %u\n", val - (char*)ret, total); //utils::to_log_with_api(hg_scanner_log_is_enable, hg_scanner_log, LOG_LEVEL_ALL, "Memory usage: %u / %u\n", val - (char*)ret, total);

View File

@ -158,7 +158,7 @@ int file_saver::open(const char* path, uint64_t size, const char* check)
dst_ = fopen(path, "wb"); dst_ = fopen(path, "wb");
if(dst_) if(dst_)
{ {
uint64_t space = 0; unsigned long long space = 0;
err = utils::get_disk_space(path, nullptr, &space, nullptr); err = utils::get_disk_space(path, nullptr, &space, nullptr);
if (err || space < size * 1.5) if (err || space < size * 1.5)
@ -233,7 +233,7 @@ data_source::~data_source()
uint64_t dyn_mem::mem_used_bytes_ = 0; uint64_t dyn_mem::mem_used_bytes_ = 0;
MUTEX dyn_mem::mem_lock_; MUTEX dyn_mem::mem_lock_;
dyn_mem::dyn_mem(size_t size) : buf_(nullptr), len_(0), space_(ALIGN_INT(size, 16)) dyn_mem::dyn_mem(size_t size) : buf_(nullptr), len_(0), space_(ALIGN_TO(size, 16))
{ {
buf_ = (uint8_t*)malloc(space_); buf_ = (uint8_t*)malloc(space_);
if (buf_) if (buf_)
@ -327,7 +327,7 @@ dyn_mem& dyn_mem::operator+=(dyn_mem& r)
{ {
if (len_ + r.get_rest() > space_) if (len_ + r.get_rest() > space_)
{ {
size_t size = ALIGN_INT(len_ + r.get_rest(), 16); size_t size = ALIGN_TO(len_ + r.get_rest(), 16);
uint8_t* buf = (uint8_t*)malloc(size); uint8_t* buf = (uint8_t*)malloc(size);
memcpy(buf, buf_, len_); memcpy(buf, buf_, len_);
free(buf_); free(buf_);

View File

@ -65,6 +65,10 @@ int gettimeofday(TIMEV* tv, struct timezone* tz)
#include <thread> #include <thread>
#include <iconv.h> #include <iconv.h>
#include <sys/vfs.h> #include <sys/vfs.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <sys/mman.h>
static std::mutex ini_lock_; static std::mutex ini_lock_;
static std::map<std::string, simple_ini*> ini_files_; static std::map<std::string, simple_ini*> ini_files_;
@ -1622,11 +1626,11 @@ void shared_memory::init(void)
obj = shmget(key_, bytes_, 0600); obj = shmget(key_, bytes_, 0600);
if (obj == -1) if (obj == -1)
obj = shmget(key_, bytes_, 0); obj = shmget(key_, bytes_, 0);
VLOG_MINI_3(LOG_LEVEL_DEBUG_INFO, "open existing: shmget(0x%x%08x) = %d\n", v[1], v[0], obj); utils::to_log(LOG_LEVEL_DEBUG, "open existing: shmget(0x%x%08x) = %d\n", v[1], v[0], obj);
obj_ = (void*)obj; obj_ = (void*)obj;
std::string prev(read()), proc(""); std::string prev(read()), proc("");
VLOG_MINI_1(LOG_LEVEL_DEBUG_INFO, "shared memory content: %s\n", prev.c_str()); utils::to_log(LOG_LEVEL_DEBUG, "shared memory content: %s\n", prev.c_str());
if (prev.length()) if (prev.length())
{ {
proc = prev; proc = prev;
@ -1651,17 +1655,17 @@ void shared_memory::init(void)
first_ = true; first_ = true;
clear(); clear();
obj = shmget(key_, bytes_, IPC_EXCL | IPC_CREAT | 0600); obj = shmget(key_, bytes_, IPC_EXCL | IPC_CREAT | 0600);
VLOG_MINI_1(LOG_LEVEL_DEBUG_INFO, "%s is not existing and reopen it\n", prev.c_str()); utils::to_log(LOG_LEVEL_DEBUG, "%s is not existing and reopen it\n", prev.c_str());
} }
} }
else else
{ {
VLOG_MINI_3(LOG_LEVEL_DEBUG_INFO, "shmget(0x%x%08x) = %d\n", v[1], v[0], errno); utils::to_log(LOG_LEVEL_DEBUG, "shmget(0x%x%08x) = %d\n", v[1], v[0], errno);
return; return;
} }
} }
obj_ = (void*)obj; obj_ = (void*)obj;
VLOG_MINI_2(LOG_LEVEL_DEBUG_INFO, "shared memory id = %d[%s], \n", obj, first_ ? "created" : "opened"); utils::to_log(LOG_LEVEL_DEBUG, "shared memory id = %d[%s], \n", obj, first_ ? "created" : "opened");
#endif #endif
if (first_) if (first_)
@ -1712,7 +1716,7 @@ char* shared_memory::get_buf(void)
#else #else
int* h = (int*)&obj_; int* h = (int*)&obj_;
char* buf = (char*)shmat(*h, 0, 0); char* buf = (char*)shmat(*h, 0, 0);
VLOG_MINI_3(LOG_LEVEL_DEBUG_INFO, "shared memory %d buffer = %s, error = %d\n", *h, hg_log::format_ptr(buf).c_str(), errno); utils::to_log(LOG_LEVEL_DEBUG, "shared memory %d buffer = %p, error = %d\n", *h, buf, errno);
#endif #endif
return buf; return buf;
@ -1751,11 +1755,11 @@ std::string shared_memory::get_proc_name_by_pid(pid_t pid)
} }
if (sizeof(pid) > 4 && v[1]) if (sizeof(pid) > 4 && v[1])
{ {
VLOG_MINI_2(LOG_LEVEL_DEBUG_INFO, "PID(%lld) name is: %s\n", pid, ret.c_str()); utils::to_log(LOG_LEVEL_DEBUG, "PID(%lld) name is: %s\n", pid, ret.c_str());
} }
else else
{ {
VLOG_MINI_2(LOG_LEVEL_DEBUG_INFO, "PID(%u) name is: %s\n", pid, ret.c_str()); utils::to_log(LOG_LEVEL_DEBUG, "PID(%u) name is: %s\n", pid, ret.c_str());
} }
return ret; return ret;

View File

@ -11,8 +11,8 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -fvisibility=hidden")
aux_source_directory(${PROJECT_SOURCE_DIR} DIR_SRCS) aux_source_directory(${PROJECT_SOURCE_DIR} DIR_SRCS)
# add_subdirectory(twain) # add_subdirectory(twain)
file(GLOB DIR_HEADS "${PROJECT_SOURCE_DIR}/*.h" "${PROJECT_SOURCE_DIR}/*.hpp" "${PROJECT_SOURCE_DIR}/*.cpp" file(GLOB DIR_HEADS "${PROJECT_SOURCE_DIR}/*.h" "${PROJECT_SOURCE_DIR}/*.hpp" "${PROJECT_SOURCE_DIR}/*.cpp"
"${PROJECT_SOURCE_DIR}/../../sdk/hginclude/*.h" "${PROJECT_SOURCE_DIR}/../../sdk/base/*.h"
"${PROJECT_SOURCE_DIR}/../../sdk/hginclude/*.cpp" "${PROJECT_SOURCE_DIR}/../../sdk/base/*.cpp"
) )
set(DIR_SRCS ${DIR_SRCS} ${DIR_HEADS}) set(DIR_SRCS ${DIR_SRCS} ${DIR_HEADS})
@ -25,7 +25,7 @@ link_libraries(dl)
# ) # )
target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR} target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/../../sdk/hginclude ${PROJECT_SOURCE_DIR}/../../sdk
${PROJECT_SOURCE_DIR}/../../../sdk/include ${PROJECT_SOURCE_DIR}/../../../sdk/include
${PROJECT_SOURCE_DIR}/../../../sdk/include/huagao ${PROJECT_SOURCE_DIR}/../../../sdk/include/huagao
${PROJECT_SOURCE_DIR}/../../../sdk/include/twain ${PROJECT_SOURCE_DIR}/../../../sdk/include/twain