我无法用python加载共享对象库。我尝试将LD_LIBRARY_PATH设置为someObject.o所在的位置,当我使用非sudo命令运行python脚本时,这是可行的,但是当我使用sudo时,会遇到链接错误。
OSError: bbumintflib.o: cannot open shared object file: No such file or directory
有人知道如何将.o文件链接到.so文件吗?
使用ldd,我知道.so找不到.o文件。
>>>ldd someSharedObject.so
linux-vdso.so.1 (0x00007ffca69a
当我尝试用.o文件编译可执行文件时,我遇到了makefile错误列表:
g++ -g -Wall -o main main.o `pkg-config --cflags --libs gtkmm-3.0`
main.o: In function `_start':
(.text+0x0): multiple definition of `_start'
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.2/../../../../lib/crt1.o:(.text+0x0): first defined here
main.o: In fun
我现在的makefile有一些问题。我有一个cpp文件和一个h文件。我正在尝试使用c++11标准进行编译。这是我的makefile:
OBJECTS = main.o
#List all object files here separated by a space
HEADERS = main.h
#List all header files here seperated by a space
lab8: $(OBJECTS)
g++ $^ -o program3
%.o: %.cpp $(HEADERS)
g++ -std=c+
我正在尝试创建一个通用的makefile来构建我的项目使用的静态库。我使用了这个站点上的专业知识,以及GNU Make手册来帮助编写以下makefile。除了一个恼人的问题之外,它工作得很好。
# Generic makefile to build/install a static library (zlib example)
ARCH = linux
CFLAGS = -O3 -Wall
# List of source code directories
SOURCES = src test utils
# List of header files to install
在过去的几个小时里,我一直在尝试为我在Netbeans中开发的一个C++应用程序设置一个cronjob。我在Windows机器上编程,并使用Ubuntu服务器作为构建主机。它将其设置为将一个文件放入分发文件夹中,我假定这是我必须执行的文件。我使用以下命令行执行它:
g++ program
之后,它会弹出以下错误:
testproject: In function `_start':
(.text+0x0): multiple definition of `_start'
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linu
我正在尝试用工具集构建zlib。作为构建过程的一部分,源文件应该被编译成带有arm-linux-gnu-eabi-gcc -c的对象,然后用libtool组合成一个归档文件,但是libtool失败了,并抱怨每个.o文件都传递给它is not an object file (not allowed in a library)。
经过检查,我发现arm-linux-gnu-eabi-gcc -c正在生成ELF文件,而不是对象文件,这是我以前从未见过的。当我将-c -v传递给编译器时,我可以看到链接器没有被调用。那么为什么是ELF格式呢?
然后,我尝试调用arm-linux-gnu-eabi-gcc
我正在尝试生成一个简单的基于霓虹灯的c代码的程序集和可执行文件。密码是,
#include <arm_neon.h>
void NeonTest(short int * __restrict a, short int * __restrict b, short int * __restrict z)
{
int i;
for (i = 0; i < 200; i++) {
z[i] = a[i] * b[i];
}
}
首先,我要到大会上去计算霓虹灯的指示,
arm-linux-gnueabi-gcc -O2 -march=armv7-a -m