Forum Replies Created
-
AuthorPosts
-
akhilavitParticipant
Thanks
akhilavitParticipantSorry. I meant #include “../../MySharedLib/API/MySharedLib.h” and not .cpp
This is my API class
Thanks
akhilavitParticipantThis issue is resolved when I added
#include “../../MySharedLib/API/MySharedLib.cpp”
i.e. when I give relative path, it works smoothly.
I dont want to give path this way. Please guide me.
Note:
When I type #include “../../
following folders are shown up:
MySharedLib, LinuxApp, 000, 001, 002
all of the above folders are at the same level .. is that little weird?
Because my project folder contains only two folders viz. MySharedLib & LinuxApp
and 000, 001, 002 ….these are not present there
akhilavitParticipantI was wrongly giving Windows directory as a path. D:\Akhil.txt
When tried linux directory path, It worked. /tmp/Akhil.txt
Thanks.
akhilavitParticipantYes! I was using only -std=c++11.
I should use -ggdb -ffunction-sections -O3 -std=c++11
Right?
akhilavitParticipantuser@host:~$ nm /tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/wrk/Linux/RevLibAPI.o | c++filt
U _GLOBAL_OFFSET_TABLE_
U RevLib::RevLibObject::GetInstance()
U RevLib::RevLibObject::DeleteInstance()
0000000000000028 r RevLib::SQR_PNT_TOL
0000000000000068 r RevLib::NEIGHBOR_SIZE
0000000000000030 r RevLib::GRID_CELL_SIZE
0000000000000038 r RevLib::GRID_SPAN_LIMIT
0000000000000040 r RevLib::SMALL_RANGE_TOL
0000000000000088 r RevLib::STL_HEADER_SIZE
000000000000008c r RevLib::MEMORY_BLOCK_SIZE
0000000000000070 r RevLib::SKEW_DISTANCE_TOL
0000000000000080 r RevLib::SMALL_CLOUD_LIMIT
0000000000000078 r RevLib::MESH_PROJECTION_TOL
0000000000000060 r RevLib::CLOUD_DIVISION_LIMIT
0000000000000000 t RevLib::GetRevLibObjectInterface()
000000000000000b t RevLib::DeleteRevLibObjectInterface()
0000000000000050 r RevLib::MAX_NUM_POINTS_IN_GRID_CELL
0000000000000048 r RevLib::MIN_NUM_POINTS_IN_GRID_CELL
0000000000000058 r RevLib::MAX_NUM_POINTS_IN_OCTREE_CELL
0000000000000018 r RevLib::PI
0000000000000020 r RevLib::EXP
0000000000000008 r RevLib::ZERO
0000000000000090 r RevLib::XMULT
0000000000000098 r RevLib::YMULT
00000000000000a0 r RevLib::ZMULT
0000000000000010 r RevLib::PNT_TOL
00000000000000a8 r RevLib::TRIXMULT
00000000000000b0 r RevLib::TRIYMULT
00000000000000b8 r RevLib::TRIZMULT
0000000000000001 r std::allocator_arg
0000000000000000 r std::piecewise_construct
0000000000000002 r std::ignoreThis is what I found on running that command.
akhilavitParticipantPlease read these details and reply clearly, as I have to wait for a day for reply, if something is missed out.
Updated:
undefined reference to `RevLib::GetRevLibObjectInterface()’
undefined reference to `RevLib::DeleteRevLibObjectInterface()’
Here RevLib is namespace in my shared library. GetRevLibObjectInterface() & DeleteRevLibObjectInterface() are declared in RevLibAPI.h and defined in RevLibAPI.cpp (i.e. exported functions of a dll)
Note:
Structure of My Project:
RevLibConApp is a windows application project. I have added LinuxConApp for this and compiled it.
Then added existing project RevLib (Initially a windows dll project, cross compiled with another Configuration, LinuxConfig) to the solution.
RevLibConApp is set dependent on RevLib from right_click->Project_dependencies.
compiled together with LinuxConApp config. Following is the output log:
1>Time Elapsed 00:00:00.61 2>------ Build started: Project: RevLibConApp, Configuration: LinuxConApp x64 ------ 2>Build started 21-09-2016 19:14:03. 2>Build: 2> VisualGDB: Found 236 source files to transfer. Checking the source cache to find modified files... 2> VisualGDB: No file changes detected. If you believe it's a mistake, please clean the project and build it again. 2> VisualGDB: Run "make CONFIG=LinuxConApp" in directory "/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLibConApp/wrk" on ubuntu@192.168.0.54 (SSH) 2> g++ -o LinuxConApp/RevLibConApp -Wl,-gc-sections -Wl,--start-group LinuxConApp/main.o LinuxConApp/ProgressMonitor.o LinuxConApp/RevLibTest.o ../RevLib/wrk/LinuxConApp/RevLib.so -Wl,--rpath='$ORIGIN' -Wl,--rpath='$ORIGIN/../../RevLib/wrk/LinuxConApp/' -Wl,--end-group 2> LinuxConApp/RevLibTest.o: In function `RevLibTest::createRevLibObjectInterface()': 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::GetRevLibObjectInterface()' 2> LinuxConApp/RevLibTest.o: In function `RevLibTest::deleteRevLibObjectInterface()': 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::DeleteRevLibObjectInterface()' 2> LinuxConApp/RevLibTest.o: In function `RevLibTest::CleanUpMeshSTL(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)': 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::GetRevLibObjectInterface()' 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::DeleteRevLibObjectInterface()' 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::DeleteRevLibObjectInterface()' 2> LinuxConApp/RevLibTest.o: In function `RevLibTest::cleanUpMeshOFF()': 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::GetRevLibObjectInterface()' 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::DeleteRevLibObjectInterface()' 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::DeleteRevLibObjectInterface()' 2> LinuxConApp/RevLibTest.o: In function `RevLibTest::ProcessMesh()': 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::GetRevLibObjectInterface()' 2>RevLibTest.cpp : error VGDB1002: undefined reference to `RevLib::DeleteRevLibObjectInterface()' 2>collect2 : error : ld returned 1 exit status 2> make: *** [LinuxConApp/RevLibConApp] Error 1 2> ------------------------------------------------------------- 2> Command exited with code 2 2> Executable: make 2> Arguments: CONFIG=LinuxConApp 2> Directory: /tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLibConApp/wrk 2>VisualGDB : error : Command-line action failed 2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.MakeFile.Targets(38,5): error MSB3073: The command ""C:\Program Files (x86)\Sysprogs\VisualGDB\VisualGDB.exe" /build "D:\User\Akhil\Ubuntu\RevLibConApp\wrk\RevLibConApp.vcxproj" "/solution:D:\User\Akhil\Ubuntu\RevLibConApp\wrk\RevLibConApp.sln" "/config:LinuxConApp" "/platform:x64"" exited with code 1. 2> 2>Build FAILED. 2> 2>Time Elapsed 00:00:00.76 ========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
akhilavitParticipantThe problem was with paths. It worked. Thanks
akhilavitParticipantKindly Tell me steps for this.
And Where should I copy .so?
Only .so is enough or should I have something else?
September 16, 2016 at 10:49 in reply to: regarding prev issue :compiler and library support for the ISO C++ 2011 standard #9072akhilavitParticipant1>—— Build started: Project: RevLib, Configuration: LinuxConfig x64 ——
1>Build started 16-09-2016 15:11:06.
1>Build:
1> VisualGDB: Sending 2 updated source files to build machine…
1> VisualGDB: Run “make CONFIG=LinuxConfig” in directory “/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/wrk” on ubuntu@192.168.0.54 (SSH)
1> g++ -std=gnu++11 -I/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Data -I/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Math -I/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/API -I/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Algo -I/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Topo -I/tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Util -DDEBUG=1 -DBUILDING_FOR_LINUX -c ../src/Algo/DataProcessor.cpp -o LinuxConfig/DataProcessor.o -MD -MF LinuxConfig/DataProcessor.dep
1> In file included from /usr/lib/gcc/x86_64-linux-gnu/4.8/include/xmmintrin.h:38:0,
1> from /usr/lib/gcc/x86_64-linux-gnu/4.8/include/x86intrin.h:34,
1> from /usr/include/x86_64-linux-gnu/c++/4.8/bits/opt_random.h:33,
1> from /usr/include/c++/4.8/random:51,
1> from /usr/include/c++/4.8/bits/stl_algo.h:65,
1> from /usr/include/c++/4.8/algorithm:62,
1> from /tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Topo/vertex.h:15,
1> from /tmp/VisualGDB/d/User/Akhil/Ubuntu/RevLib/src/Topo/mesh.h:22,
1> from ../src/Algo/DataProcessor.cpp:7:
1>C:\Users\akhils\AppData\Local\VisualGDB\RemoteSourceCache\192.168.0.54\0001\include\mm_malloc.h(34,64): error : declaration of C function `int posix_memalign(void**, int, int)’ conflicts with
1> extern “C” int posix_memalign (void **, size_t, size_t) throw ();
1> ^
1> In file included from /usr/include/c++/4.8/cstdlib:72:0,
1> from /usr/include/c++/4.8/ext/string_conversions.h:41,
1> from /usr/include/c++/4.8/bits/basic_string.h:2815,
1> from /usr/include/c++/4.8/string:52,
1> from ../src/Algo/DataProcessor.h:9,
1> from ../src/Algo/DataProcessor.cpp:2:
1>C:\Users\akhils\AppData\Local\VisualGDB\RemoteSourceCache\192.168.0.54\0000\include\stdlib.h(503,12): error : previous declaration `int posix_memalign(void**, size_t, size_t)’ here
1> extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size).
.
.
.
This is my output. Now what do you mean by a modification in a function? should I change system function?
September 16, 2016 at 08:32 in reply to: compiler and library support for the ISO C++ 2011 standard #9070akhilavitParticipantError 1 [Clang IntelliSense] Error: invalid argument ‘-std=c++11’ not allowed with ‘C/ObjC’ 1
I get this error now
September 14, 2016 at 09:00 in reply to: compiler and library support for the ISO C++ 2011 standard #9056akhilavitParticipantError 1 [Clang IntelliSense] Error: ‘vector’ file not found
Is still an error. What would be a problem to understand std::vector?
September 14, 2016 at 08:55 in reply to: compiler and library support for the ISO C++ 2011 standard #9055akhilavitParticipantthanks. This works and resolves error of compiler version
But it raised many new errors
C:\Users\akhils\AppData\Local\VisualGDB\RemoteSourceCache\192.168.0.54\0001\include\mm_malloc.h(34,64): error : declaration of C function `int posix_memalign(void**, int, int)’ conflicts with
1> extern “C” int posix_memalign (void **, size_t, size_t) throw ();akhilavitParticipantI tried this and it fails at Step No 9
akhilavitParticipantAnd yes, I exactly want the same. I have a project in windows and want to compile it in Mac.
Can you provide me a link or a tutorial?
-
AuthorPosts